はじめに
初投稿です。
はじめまして、本名じゃないときは大体はるかぜと名乗ってます。
今までずっとWindows、VisualStudio(C#、WindowsFormsがメイン)、SqlServerとMicrosoftべったり業務アプリ開発の仕事をしてきましたが.NETCoreがだいぶ使えるようになってきたみたいなのでこれを機に仕事とは関係なくLinuxとVisualStudioCodeを触ってみたいと思い、空き時間にやったことを日記のように書いていきたいと思っています。
とりえあえずの目標として.NETCoreでWebAPIを作れるようにするところまでやる予定です。
参考にしてくださる方がいると嬉しいですが、時間があるときにゆっくりやっていくので遅いですがご了承ください。
LinuxもWeb系もVSCodeもほぼ初心者なのでとりあえず動く方法を手探りでやってます。
(これが本当に正しい方法なのかわかりませんが動けばOKというレベルでやってます)
環境
Linux Mint 19.1(ubuntu系なら違いはないはず)
.NET Core 2.2
Visual Studio Code 1.33
.NET Core SDK 2.2のインストール
ubuntu18.04ベースなので公式のubuntu18.04へのインストール方法に従って以下のコマンドを実行
~$ wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb
~$ sudo dpkg -i packages-microsoft-prod.deb
~$ sudo add-apt-repository universe
~$ sudo apt-get install apt-transport-https
~$ sudo apt-get update
~$ sudo apt-get install dotnet-sdk-2.2
特に問題なく終わったのでバージョンを確認
~$ dotnet --list-sdks
2.2.202 [/usr/share/dotnet/sdk]
バージョン2.2.202がインストールされたようです。
VSCodeのインストール
公式でダウンロードしてもいいんですがリポジトリを追加してインストールしました。
~$ sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
~$ sudo apt-get update
~$ sudo apt-get install code
これも特に問題なく終了。
バージョンも最新のものになっているようです。
VSCodeに必要な拡張機能を追加
とりあえず以下のものを入れました。
(後々増えたらここに追記します)
- Japanese Language Pack for Visual Studio Code(日本語化)
- C#
- NuGet Package Manager(Nugetパッケージの検索、追加)
Hello World
これでC#の開発をする準備はできているはずなのでHello Worldを実行してみます。
- 適当な場所にフォルダを作成してVSCodeで開く(今回はhelloworldというフォルダを作りました)
-
Ctrl+Shift+^
でターミナルを開く -
dotnet new console
でコンソールアプリケーションのプロジェクトを作成
これでdotnet run
で実行できるのは確認しましたがなにやらOmniSharpがエラーを吐いているようなので確認してみます。
Microsoft.Build.Exceptions.InvalidProjectFileException:
The SDK 'Microsoft.NET.Sdk' specified could not be found.
/home/(ユーザー名)/vscode/helloworld/helloworld.csproj
ここで2時間くらいハマりましたがどうやら環境変数のMSBuildSDKsPathにインストールした.NET CoreのバージョンのSdksフォルダを設定してやればいいようです。
export MSBuildSDKsPath="/usr/share/dotnet/sdk/2.2.202/Sdks/"
.bashrcに上記の記述を追加してsource .bashrc
で再読込してやったら無事エラーはなくなって「デバッグの開始」での実行もできるようになりました。