.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 (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...