进行WPF应用跨平台迁移:目前比较成熟的路线是使用Avalonia+netcore+Visual Studio。可以实现WPF应用在UOS上运行。
参考 .NET 6+ Avalonia + WPF 开发支持跨平台应用程序 - 知乎 (zhihu.com)进行应用迁移,在deb打包步骤出错。打包步骤在根目录下生成release文件夹。其中,指定操作方式是创建Deb文件,目标环境是.NET6.0,以及运行时是 linux-x64环境。
错误提示如下:Packaging.Targets.targets(190,5): error MSB4018: “DebTask” 任务意外失败
这里搜遍全网也没有找到解决方案。需要转变一下思路:UOS上不一定要执行deb文件执行。有release\net6.0\linux-x64\publish文件夹已经有可执行文件,可以在UOS上执行。因此去掉 :t/CreateDeb。
dotnet msbuild linuxwpf.csproj /p:TargetFramework=netcoreapp3.1 /p:RuntimeIdentifier=linux-x64 /p:Configuration=Release
此时就完成了生成,尝试将 bin\release\net6.0\linux-x64\publish\
文件夹复制到 UOS 系统上。
可以在资源管理器里面双击可执行程序 linuxwpf 运行。
在成功跑起来之后,可以进一步探索更复杂的应用。