.NET Core控制台应用程序生成exe可执行文件

前几天我需要使用别人用C#写的项目时,编译运行之后,却发现在文件夹里找不到exe可执行文件。找了很久,才发现这是使用.NET Core框架写的项目,而我平常都是使用.NET FrameWork框架。

 通过百度了解到,.NET Core的项目分为两种发布方式,一种叫Framework-dependent deployments(FDD),还有一种叫Self-contained deployments(SCD)。

1.按默认发布生成用的是FDD方式,发布后生成的是dll文件,而不是exe文件。

 

 2.SCD方式:按下图这种配置发布项目,更改部署模式为独立,目标运行时选择win-x64,然后点保存,发布,即可生成exe文件。

 

但是由于SCD模式会将所有.NET Core的系统程序集也都生成出来,会造成发布后的发布文件数量增加,整个项目的程序文件变大。并且用这种方式生成的exe文件需要依赖于系统的dll文件,所以一旦脱离原文件夹单独拿出来,就无法运行了。

于是,我又寻找了新的生成exe文件的方式,通过dotnet命令来执行。即在包含csproj文件的目录下打开Powershell窗口(shift + 鼠标右键),运行生成命令:

dotnet build --runtime win-x64

 即可在子文件夹bin\Debug\netcoreapp2.1中找到新生成的win-x64文件夹,win-x64文件夹中即可找到exe文件。

 

 不过使用此方法生成的exe文件也不能脱离原文件夹的依赖项单独运行,如果有什么能够生成独立exe的方法,请大家多多指教!

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值