.NET Core向け”dotnet”CLIツール

情報源: Exploring the new .NET “dotnet” Command Line Interface (CLI) – Scott Hanselman

.NET Core Fxで動作する実行バイナリを作成するためのCLIツールとして「dotnet」コマンドが登場してきました。

とりあえず、ここhttps://get.asp.net/から、プラットフォームごとの最新のランタイムをダウンロードしてインストールします。

次に、ここhttp://dotnet.github.io/getting-started/の手順で作業を進めます。

> dotnet new
Created new project in C:\Users\ishisaka\src\aspnet\test01.

こうすると以下のファイルができます。

> ls
NuGet.Config  Program.cs  project.json

CLIなプログラムのひな型が作成されます。

> dotnet restore
Microsoft .NET Development Utility CoreClr-x64-1.0.0-rc1-16231

  CACHE https://www.myget.org/F/dotnet-core/api/v3/index.json
  CACHE https://api.nuget.org/v3/index.json
Restoring packages for C:\Users\ishisaka\src\aspnet\test01\project.json
Writing lock file C:\Users\ishisaka\src\aspnet\test01\project.lock.json
Restore complete, 675ms elapsed

以上に様にrestoreコマンドでライブラリをレストアします。ASP.NET 5でのdnu restoreに相当します。

実行はだいたい想像がつくと思いますが、以下のように実行します。

> dotnet run
Hello World!

ちゃんとコンソール上にHello World!が表示されました。

ただ、ここまでなら今までのASP.NET 5のdnx,dnuコマンド違いがありませんが、大きく違うのが、dotnetコマンドは実行バイナリを作成できるところです。

> dotnet compile
Compiling test01 for DNXCore,Version=v5.0

Compilation succeeded.
    0 Warning(s)
    0 Error(s)

Time elapsed 00:00:01.4238387

こうすると、bin\Debug\dnxcore50というディレクトリに、次にファイルが作成されます。(Windows)

> ls
NuGet.Config  test01.deps  test01.dll  test01.exe  test01.pdb

ということで、実行ファイルが作成されました。うまくいけばマルチプラットフォームでのツール作成等に使っていけそうです。