如何解决.NET跨平台应用程序仅在我在Windows上构建时才起作用,而在LinuxTravis CI上构建时则不起作用
当在具有.NET版本 16.7.0-preview-20310-07 + ee1c9fd0c 的Windows上构建时,我的.NET 5应用程序C#2J可在Ubuntu子系统中使用。
dotnet publish --runtime linux-x64
。
在具有.NET版本 16.7.0-preview-20360-03 + 188921e2f 的Travis CI上构建时不起作用:
script:
- dotnet-sdk.dotnet publish --runtime win-x64
- dotnet-sdk.dotnet publish --runtime linux-x64
- dotnet-sdk.dotnet publish --runtime osx-x64
- *zipping*
尝试运行该应用程序时出现的错误是:
-bash: ./csharp-to-json-converter: cannot execute binary file: Exec format error
我读了几篇文章,人们说这可能是架构不匹配,但我认为不是这种情况,因为我在publish命令中指定了架构。
我在Travis CI的版本和本地版本之间进行了区分,而DLL和可执行文件的大小确实有所不同。我看过this post,但似乎无关。
谢谢您的帮助!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。