我有一个。net核心控制台应用程序,并运行dotnet发布。但是,我不知道如何从命令行运行应用程序。有提示吗?
当前回答
如果它是一个依赖于框架的应用程序(默认值),则通过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\
如果它是一个依赖于框架的应用程序(默认值),则通过dotnet yourapp.dll运行它。
如果它是一个自包含的应用程序,在Windows上使用yourapp.exe运行它,在Unix上使用。/yourapp运行它。
有关这两种应用程序类型区别的更多信息,请参阅. net文档上的. net核心应用程序部署文章。
转到…\bin\Debug\net5.0(“net5.0”也可以是类似于“netcoreapp2.2”的东西,这取决于你使用的框架。)
如图所示,点击打开一个PowerShell窗口。
在PowerShell窗口中输入:.\yourApp.exe
你不需要dotnet发布。只是要确保在构建之前包含所有更改。
在运行命令提示符之前,请确保“appsettings. properties”为“appsettings. properties”。“appsettings.Development.json”的值与“appsettings.Development.json”的值相同。
在命令提示符中,一直到bin/debug/netcoreapp2.0文件夹。然后运行"dotnet applicationname.dll"
您也可以像运行任何其他控制台应用程序一样运行您的应用程序,但必须在发布之后。
让我们假设您有一个名为MyTestConsoleApp的简单控制台应用程序。
打开包管理器控制台,执行以下命令:
dotnet publish -c Debug -r win10-x64
-c标志表示您希望使用调试配置(在其他情况下,您应该使用Release值)
r标志意味着您的应用程序将运行在具有x64体系结构的Windows平台上。
当发布过程完成后,您将看到位于bin/Debug/publish目录中的*.exe文件。
现在您可以通过命令行工具调用它。所以打开CMD窗口(或终端)移动到您的*.exe文件所在的目录,并编写下一个命令:
>> MyTestConsoleApp.exe argument-list
例如:
>> MyTestConsoleApp.exe --input some_text -r true
推荐文章
- 如何使用Windows命令行更改目录
- 如何删除所有MySQL表从命令行没有DROP数据库权限?
- Windows递归grep命令行
- Linux相当于Mac OS X的“open”命令
- 如何在Mac上的命令行安装JQ ?
- 在命令行中使用Firefox截取完整页面的截图
- 在pip install -U中“-U”选项代表什么
- 如何将参数转发到bash脚本中的其他命令?
- 显示/隐藏c#控制台应用程序的控制台窗口
- 使用Wget进行多个同时下载?
- 密码屏蔽控制台应用程序
- Unix列表命令'ls'可以输出数值chmod权限吗?
- 如何从命令行重置Jenkins安全设置?
- .NET Core DI,向构造函数传递参数的方法
- 如何使用xargs复制名称中有空格和引号的文件?