.net core 2.0程序默认生成的是一个dll,需要通过dotnet
命令来执行他。
dotnet ConsoleApp1.dll
这种方式有点类似于java程序。本身这种方式没有什么问题,但在调试和维护的过程中还是没有exe来的方便。在网上查了一下,貌似还没有多少介绍.net core 2.0下生成exe的方法,这里便写篇文章记录下,以备有同样需求的朋友查询。
其实.net core 2.0下生成exe的方法也比较简单,直接在生成命令上使用--runtime <rid> 即可。例如,原来编译的命令是:
dotnet build
生成带exe的命令则是:
dotnet build --runtime win-x64
此时就会在文件夹下生成一个win-x64的文件夹,里面则是有一个带exe的版本。
另外,--rumtime也可以简写为 –r,该命令可以简写如下:
dotnet build -r win-x64
发布的时候使用dotnet publish即可,
dotnet publish -c Release -r win-x64
该参数可以支持如下命令:
- dotnet build
- dotnet clean
- dotnet pack
- dotnet publish
- dotnet restore
- dotnet run
- dotnet store
剩下的一个问题就是参数rid该如何选择,这里可以参看MSDN上的这篇文章:.NET Core RID Catalog。如果不想看这篇文章,对于Windows可以参考下表:
Portable | win-x86 / win-x64 |
Win7 / 2008 R2 | win7-x86 / win7-x64 |
Win8 / 2012 | win8-x86 / win8-x64 / win8-arm |
Win8.1 / 2012 R2 | win81-x86 / win81-x64 / win81-arm |
Win10 | win10-x86 / win10-x64 / win10-arm / win10-arm64 |
由于windows本身就有一定的兼容性,这里的版本选择也不是绝对的,生成的win10-x64也可以一样在win7下面跑。当然,也可以直接选择Portable的win-x64
到此这篇关于使用.NET Core创建exe应用程序的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程网。