iOS MAUI 的发布版本失败,出现 MSB3191(组合路径不正确)

Mic*_*lpr 0 .net xamarin.ios ios maui

iOS MAUI 应用程序(远程设备)的构建版本失败,并显示以下错误消息:

代码MSB3191 说明无法创建目录“obj/Release/net6.0-ios/ios-arm64//stripped/Microsoft.Extensions.DependencyInjection.Abstractions.dllDevelop\Test\MauiApp1\obj\Release\net6.0-ios\ios -arm64\链接”。指定的路径、文件名或两者都太长。完全限定文件名必须少于 260 个字符,目录名必须少于 248 个字符。 文件C:\Program Files\dotnet\packs\Microsoft.iOS.Sdk\15.4.446-ci.-release-6-0-4xx.446\targets\Xamarin.Shared.Sdk.targets 751行

这是一个从模板“.NET MAUI App”创建的新项目 - 我刚刚更改了应用程序 ID 和配置文件。Windows 10,全新安装 Microsoft Visual Studio Community 2022(64 位)- 当前版本 17.3.5。使用 Xcode 13.3.1 连接到远程 Mac。

iOS(本地设备或远程设备)的调试版本可以。其他平台(Android、Windows)的发布版本没问题...

有人对如何解决这个问题有任何想法吗?

Mic*_*lpr 5

终于找到了解决办法:

执行命令dotnet workload restore "full-path-to-your-sln"就神奇了!

更新: 以上命令不起作用 - 我必须通过编辑项目文件来选择退出 ILStripping。我补充道:

<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)'=='Release|net6.0-ios'">    
  <EnableAssemblyILStripping>False</EnableAssemblyILStripping>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)