回答:
フレームワークに依存するアプリケーション(デフォルト)の場合は、で実行しdotnet yourapp.dll
ます。
自己完結型のアプリケーションの場合はyourapp.exe
、Windowsと./yourapp
Unix を使用して実行します。
2つのアプリタイプの違いの詳細については、.Net Docsの.NET Core Application Deploymentの記事を参照してください。
dotnet run
。また、どこを見ましたか?この情報はどこにありますか?
dotnet run
。新しいcsprojプロジェクトでも、project.jsonと同じように機能します。
dotnet run
は、ソリューションディレクトリではなくプロジェクトディレクトリにいることを確認してください。
不可解なビルドコマンドを使用せずに、非常に簡単にEXE(Windows用)を作成できます。Visual Studioで直接実行できます。
他のコンソールアプリケーションと同じようにアプリを実行することもできますが、公開後のみです。
MyTestConsoleAppという名前のシンプルなコンソールアプリがあるとします。パッケージマネージャーコンソールを開き、次のコマンドを実行します。
dotnet publish -c Debug -r win10-x64
-cフラグは、デバッグ構成を使用することを意味します(他の場合はリリース値を使用する必要があります)-rフラグは、アプリケーションがx64アーキテクチャーのWindowsプラットフォームで実行されることを意味します。
公開手順が完了すると、bin / Debug / publishディレクトリにある* .exeファイルが表示されます。
これで、コマンドラインツールを使用して呼び出すことができます。CMDウィンドウ(またはターミナル)を開き、*。exeファイルがあるディレクトリに移動して、次のコマンドを記述します。
>> MyTestConsoleApp.exe argument-list
例えば:
>> MyTestConsoleApp.exe --input some_text -r true
dotnetcore3.0では、PublishSingleFile
プロパティを使用してソリューション全体を単一ファイルの実行可能ファイルにパッケージ化できます
-p:PublishSingleFile=True
ソースの単一ファイル実行可能ファイル
例Self Contained
、Release
OSXの実行可能ファイル:
dotnet publish -c Release -r osx-x64 -p:PublishSingleFile=True --self-contained True
例としてSelf Contained
、Debug
Linuxが実行可能な64ビット:
dotnet publish -c Debug -r linux-x64 -p:PublishSingleFile=True --self-contained True
Linuxビルドはディストリビューションに依存せず、Ubuntu 18.10、CentOS 7.7、Amazon Linux 2で動作することがわかりました。
自己完結型の実行可能ファイルにはDotnetランタイムが含まれており、ランタイムをターゲットマシンにインストールする必要はありません。公開された実行可能ファイルは次の場所に保存されます。
<ProjectDir>/bin/<Release or Debug>/netcoreapp3.0/<target-os>/publish/
Linux、OSXおよび
<ProjectDir>\bin\<Release or Debug>\netcoreapp3.0\<target-os>\publish\
Windowsの場合。
<PublishSingleFile>true</PublishSingleFile>
.netコアSDKがマシンにインストールされている場合、CMDを使用してコンソール.netコアプロジェクトを実行できます。
Windowsコマンドラインを使用してコンソールプロジェクトを実行するには、ディレクトリから特定のパスを選択し、以下のコマンドを入力します
dotnet run