我有一个。net核心控制台应用程序,并运行dotnet发布。但是,我不知道如何从命令行运行应用程序。有提示吗?


当前回答

转到…\bin\Debug\net5.0(“net5.0”也可以是类似于“netcoreapp2.2”的东西,这取决于你使用的框架。)

如图所示,点击打开一个PowerShell窗口。

在PowerShell窗口中输入:.\yourApp.exe

你不需要dotnet发布。只是要确保在构建之前包含所有更改。

其他回答

您可以很容易地创建EXE(用于Windows),而无需使用任何神秘的构建命令。你可以在Visual Studio中完成。

Right click the Console App Project and select Publish. A new page will open up (screen shot below) Hit Configure... Then change Deployment Mode to Self-contained or Framework dependent. .NET Core 3.0 introduces a Single file deployment which is a single executable. Use "framework dependent" if you know the target machine has a .NET Core runtime as it will produce fewer files to install. If you now view the bin folder in explorer, you will find the .exe file. You will have to deploy the exe along with any supporting config and dll files.

如果它是一个依赖于框架的应用程序(默认值),则通过dotnet yourapp.dll运行它。

如果它是一个自包含的应用程序,在Windows上使用yourapp.exe运行它,在Unix上使用。/yourapp运行它。

有关这两种应用程序类型区别的更多信息,请参阅. net文档上的. net核心应用程序部署文章。

在。net Core 3.0中,你可以使用PublishSingleFile属性将整个解决方案打包成一个可执行文件:

-p:PublishSingleFile=True

来源:单文件可执行文件

一个独立的OS X可执行文件的例子:

dotnet publish -c Release -r osx-x64 -p:PublishSingleFile=True --self-contained True

一个自包含的、调试的Linux 64位可执行文件的例子:

dotnet publish -c Debug -r linux-x64 -p:PublishSingleFile=True --self-contained True

Linux版本是独立于发行版的,我发现它们可以在Ubuntu 18.10 (Cosmic Cuttlefish)、CentOS 7.7和Amazon Linux 2上运行。

一个自包含的可执行文件包括。net运行时,而运行时不需要安装在目标计算机上。已发布的可执行文件保存在:

<ProjectDir>/bin/<Release or Debug>/netcoreapp3.0/<target-os>/publish/ Linux、OS X和

在Windows上<ProjectDir>\bin\<Release or Debug>\netcoreapp3.0\<target-os>\publish\

转到…\bin\Debug\net5.0(“net5.0”也可以是类似于“netcoreapp2.2”的东西,这取决于你使用的框架。)

如图所示,点击打开一个PowerShell窗口。

在PowerShell窗口中输入:.\yourApp.exe

你不需要dotnet发布。只是要确保在构建之前包含所有更改。

如果你的机器上安装了。net Core SDK,使用CMD可以运行控制台。net Core项目:

要使用Windows命令行运行控制台项目,请从目录中选择特定的路径并键入以下命令:

dotnet run