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

发布日期:2018-02-22    浏览次数:482

本文主要记录.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就无法正确读取了。

 

 

 

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

 

本文网址:https://www.wyxxw.cn/blog-detail-2-21-366.html

返回列表

非特殊说明,本文版权归原作者所有,转载请注明出处

提示:本站所有资源仅供学习与参考,请勿用于商业用途。图片来自互联网~如侵犯您的权益,请联系QQ:1067507709.

提示:转载请注明来自:https://www.cnblogs.com/moshanghuakai/p/8288448.html 。 转载人:momo