Introduction
前回は、**.NET Core、Visual Studio Code、拡張機能**をインストールしました。
今回はプロジェクトを作って実行します。
Preparation
まずは、プロジェクトフォルダを作成します。
これはどこでも良いので、今回は、**~/git/Demo/DotNetCoreLinux1**とします。
このフォルダを以降、プロジェクトフォルダと呼称します。
まず端末を開き、プロジェクトフォルダに移動し、下記のコマンドを入力します。
1 | cd ~/git/Demo/DotNetCoreLinux1 |
初めてdotnet newした場合は、環境の初期化が実行されます。
以降は表示されません。
これにより、プロジェクトフォルダ配下に
- Program.cs
- project.json
が生成されます。
なお、project.jsonによるプロジェクト管理は、.NET Core 2.0から廃止が決定されています。
下記では、.NET Core 2.0のプレビュー利用しました。作成されたのは、corecli.csprojという見慣れた拡張子でした。
なので、正直、.NET Core 1.1系で勉強する意味は無いのですが、Linux初心者な自分にとっては、Linuxを使って何かをなすことが大事なので無視します。
ですが、2017/05/16に.NET Core 2.0の正式なプレビューがリリースされました。
なので、RHELでのサポートも近いでしょう。
Build
準備が出来ました。
プロジェクトの作成が出来たので、ビルドして実行します。
単純にHello, Worldと表示されるだけですが、重要なのは、環境構築ができており、.NET Coreを使ったプログラミングが可能であることの確認です。
まず、下記のコマンドを実行し、リストアします。
newした直後は、最低限しかファイルが内ので、nugetのリストアみたいに依存関係にあるライブラリの復元を行います。
1 | dotnet restore |
続いてビルドします。
1 | dotnet build |
Run
エラーがないので、実行します。
1 | dotnet run Project DotNetCoreLinux1 (.NETCoreApp,Version=v1.1) was previously compiled. Skipping compilation. Hello World! |
予想通りの結果です。
ちなみに、プロジェクトフォルダ直下でdotnet runではなく、次のように、実際のバイナリがあるフォルダで実行も出来ます。
1 | dotnet run |
dllとなっていますが、実行ファイルです。
1 | cd bin/Debug/netcoreapp1.1/ |
Debug
まず、コンソールが問題ないことがわかりましたので、プロジェクトフォルダをVisual Studio Codeで開きます。
ファイル->フォルダーを開くで開くことが可能です。
プロジェクトを開いた状態です。
Program.cs を選択し、実行可能行の左端をクリックするか、実行可能業にカーソルを置いて F9 を押下して、ブレークポイントを貼ります。
Visual Studioと同じ操作です。
F5 を押下してデバッグ実行します。
こちらもVisual Studioと同じ操作です。
しかし、実行できません。
よく見ると、ビルドとデバッグに必要なアセットが見つからないので、追加するかを尋ねられますので、Yes と応えます。
こういう細かいところはまだ日本語化されていない模様。
再度実行すると、成功し、ブレークポイントで実行が停止しているのがわかります。
Conclusion
Dockerのようなコンテナでは無く、自分で構築したOS上に、自分で.NET Coreをインストールし、CUI、GUI上で実行、デバッグまで出来るようになりました。
次は何か小さなツールを作ってみます。