当前位置: 移动技术网 > IT编程>开发语言>.net > 关于.net Core项目发布在Linux上的填坑

关于.net Core项目发布在Linux上的填坑

2018年01月17日  | 移动技术网IT编程  | 我要评论

幻梦水境脱出,马赛卡,拉芙拉

本文主要记录.net Core项目发布在Linux服务器上面所遇到的问题,防止遗忘是

1、在发布文件中执行 dotnet xxxxxx.dll的时候提示如下错误:

An assembly specified in the application dependencies manifest (xxx.deps.json) was not found:
package: 'Swashbuckle.AspNetCore.Swagger', version: '1.0.0'
path: 'lib/netstandard1.6/Swashbuckle.AspNetCore.Swagger.dll'

 

解决:

一开始我在Linux上面是可以正常发布改项目的(A压缩文件),但是又一次委托同事电脑发布更新之后发现无法发布了(B压缩文件)。根据提示我查看了A,B两个发布包中的xxx.deps.json后

发现部分sdk版本不一样,B中有些SDK版本为2.0.3.。然后在Linux中 dotnet --version发现目前dotnet sdk版本为2.0.0,更新为2.0.3(或者以上)之后发现程序可以正常发布了。

 

2、无法读取本地文件

解决:将所有文件引用地址改为相对地址。(不要用绝对地址)

这个问题有一个补充。项目中的菜单是根据读取本地的一个dataClient.json文件来生成的。然后在windows中可以正常读取。发布到Linux中有无法读取了。检查后发现程序中读取的文件名称为“dataClient.Json”。文件后缀大小写不准确,但是在windows中可以正确读取,Linux就无法正确读取了。

 

 

 

其他后续补充。。。。。。

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网