.Net 7 Native AOT 单文件 无依赖 跨平台

1 篇文章 0 订阅

2022.11.18 Native AOT 正式发布,不再是 实验性项目。

.Net 7 Console App & WebApi 使用PublishAOT = true,直接编译 成exe,无rutime依赖,智能裁剪,体积小,启动快。

环境:

1.更新VS2022 到最新版本(支持.net 7)

2.VS2022 安装 使用C++ 桌面开发

 

踩坑:

1.程序里一些 没有应用到的 方法会被裁剪掉,包括泛型注入等。

可以使用 rd.xml 配置来告诉 ILCompiler,那些是需要的

 

 截图是,webapi-serilog 的skins rd.xml配置.

2.遇到 link.exe不是内部或外部命令

这个是安装 C++桌面开发,缺少组件引起的。我这边直接拷贝link.exe到项目目录,解决了编译问题,暂时还没有找到 是什么问题引起的。

可能是注册表:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor\Autorun=chcp 65001 引起的,修改为@chcp 65001>nul,就好了

D:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.34.31933\bin\Hostx64\x64

Native AOT deployment overview - .NET | Microsoft Learn

Runtime Directives (rd.xml) Configuration File Reference - UWP applications | Microsoft Learn

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值