2022.11.18 Native AOT 正式發(fā)布,不再是 實(shí)驗(yàn)性項(xiàng)目。
.Net 7 Console App & WebApi 使用PublishAOT = true,直接編譯 成exe,無rutime依賴,智能裁剪,體積小,啟動(dòng)快。
環(huán)境:
1.更新VS2022 到最新版本(支持.net 7)
2.VS2022 安裝 使用C++ 桌面開發(fā)
?
踩坑:
1.程序里一些 沒有應(yīng)用到的 方法會(huì)被裁剪掉,包括泛型注入等。
可以使用 rd.xml 配置來告訴 ILCompiler,那些是需要的
?
?截圖是,webapi-serilog 的skins rd.xml配置.
2.遇到 link.exe不是內(nèi)部或外部命令
這個(gè)是安裝 C++桌面開發(fā),缺少組件引起的。我這邊直接拷貝link.exe到項(xiàng)目目錄,解決了編譯問題,暫時(shí)還沒有找到 是什么問題引起的。
可能是注冊(cè)表:計(jì)算機(jī)\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文章來源:http://www.zghlxwxcb.cn/news/detail-439491.html
Runtime Directives (rd.xml) Configuration File Reference - UWP applications | Microsoft Learn文章來源地址http://www.zghlxwxcb.cn/news/detail-439491.html
到了這里,關(guān)于.Net 7 Native AOT 單文件 無依賴 跨平臺(tái)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!