我有一个.NET Core控制台应用程序并已运行dotnet publish.但是,我无法弄清楚如何从命令行运行应用程序.任何提示?
svi*_*ick 247
如果它是一个依赖于框架的应用程序(默认),则运行它dotnet yourapp.dll.
如果它是一个独立的应用程序,您可以yourapp.exe在Windows和./yourappUnix 上运行它.
有关两种应用程序类型之间差异的详细信息,请参阅.Net Docs上的.NET Core Application Deployment文章.
Jes*_*ess 43
您可以非常轻松地创建EXE(对于Windows),而无需使用任何隐秘的生成命令。您可以在Visual Studio中直接进行操作。
Teq*_*ila 17
您也可以像任何其他控制台应用程序一样运行您的应用程序,但仅在发布之后
假设您有一个名为MyTestConsoleApp的简单控制台应用程序.打开包管理器控制台并运行以下命令:
dotnet publish -c Debug -r win10-x64
Run Code Online (Sandbox Code Playgroud)
-c标志表示您要使用调试配置(在其他情况下,您应该使用Release值) - r flag表示您的应用程序将在具有x64体系结构的Windows平台上运行.
发布过程完成后,您将看到位于bin/Debug/publish目录中的*.exe文件.
现在您可以通过命令行工具调用它.因此,打开CMD窗口(或终端)移动到*.exe文件所在的目录,然后编写下一个命令:
>> MyTestConsoleApp.exe argument-list
Run Code Online (Sandbox Code Playgroud)
例如:
>> MyTestConsoleApp.exe --input some_text -r true
Run Code Online (Sandbox Code Playgroud)
使用 .NET Core 3.0,您可以使用以下属性将整个解决方案打包到单个文件可执行文件中PublishSingleFile:
-p:PublishSingleFile=True\nRun Code Online (Sandbox Code Playgroud)\n来源:单文件可执行文件
\n独立的发行版OS\xc2\xa0X 可执行文件的示例:
\ndotnet publish -c Release -r osx-x64 -p:PublishSingleFile=True --self-contained True\nRun Code Online (Sandbox Code Playgroud)\n独立的调试 Linux 64 位可执行文件的示例:
\ndotnet publish -c Debug -r linux-x64 -p:PublishSingleFile=True --self-contained True\nRun Code Online (Sandbox Code Playgroud)\nLinux 版本独立于发行版,我发现它们可以在Ubuntu\xc2\xa018.10 (Cosmic Cuttlefish)、CentOS 7.7 和Amazon\xc2\xa0Linux \xc2\xa02 上运行。
\n自包含的可执行文件包括 .NET 运行时,并且运行时不需要安装在目标计算机上。发布的可执行文件保存在:
\n<ProjectDir>/bin/<Release or Debug>/netcoreapp3.0/<target-os>/publish/在 Linux、OS\xc2\xa0X 和
<ProjectDir>\\bin\\<Release or Debug>\\netcoreapp3.0\\<target-os>\\publish\\在 Windows 上。
| 归档时间: |
|
| 查看次数: |
88030 次 |
| 最近记录: |