zoukankan      html  css  js  c++  java
  • ASP.NET Core 共享第三方依赖库部署的Bug(*.deps.json on 2.2.0 or 4.6.0 版本)

    背景:

    I try to put the Microsoft.*.dll and System.*.dll togather to a new folder.
    以便把(第三方或)系统的和应用的dll分开。
    之前花了很长的一段时间研究之后,最后:
    I find xxx.deps.json can make it work.

    之后我还特意写了篇文章介绍它:https://www.cnblogs.com/cyq1162/p/10542832.html

    今天遇Bug了:

    but today,when i update the Microsoft. Aspnetcore to 2.2.0 version.

    之前框架引用的是全家桶Microsoft.AspNetCore.All,感觉发布的时候,多了太多没用的dll。

    所以为了瘦身,只挑几个必要的,然后升级了一下版本,毕竟听说NetCore新版本性能更强了。

    只是没想到啊。

    it dose not work, and make me crazy.

    because it always show me the msg like this:

    F:CodeOpenSourceAries-GitHub runkAries.DevFrameworkWeb.UI_NetCoreinRele asePublishOutput>dotnet Web.UI.dll Error: **An assembly specified in the application dependencies manifest (Web.UI.deps.js on) was not found**: package: 'Microsoft.AspNetCore.Authentication.Abstractions', version: '2.2.0 ' path: 'lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.d ll'

    and the json like this:

    "Microsoft.AspNetCore.Authentication.Abstractions/2.2.0": {
            "dependencies": {
              "Microsoft.AspNetCore.Http.Abstractions": "2.2.0",
              "Microsoft.Extensions.Logging.Abstractions": "2.2.0",
              "Microsoft.Extensions.Options": "2.2.0"
            },
            "runtime": {
              "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.dll": {
                "fileVersion": "2.2.0.18316"
              }
            }
          }
    

    我花了N长的时间在检测配置和确定路径的正确性,不管是相对的,还是绝对的;

    在服务器上,在本地上,但结果,却依旧很悲催。

    甚至,我上一篇中指向把源码都下到本地了,搜了半天关键字,也没啥发现。
    it take me much time to find out the question what it's.

    发现Bug:

    when i try to maike it like this:
    Microsoft.AspNetCore.Authentication.Abstractions
    Microsoft.AspNetCore.Authentication.Abstractions/2.2.xxx
    it work.
    就是这样,只要版本号不是2.2.0,它就一切正常。
    之后又几次测试,发现版本号是4.6.0也同样有问题。
    and then i find the version on /4.6.0 ,it does not work also.

    就是这样,版本号三位数,尾数是0的,就提示找不到dll。

    how ugly this bug it's.

    解决方法:

    过点时间再升一下版本,只要尾号不是以0为结尾就好,像之前一直用2.0.3版本,就很好。

    或者,把版本号替换掉。

    Github上也留言了,小小问题,但愿早日修复:https://github.com/dotnet/core-setup/issues/5588

    最后,祝大伙玩NetCore玩的快乐。

  • 相关阅读:
    L3-007. 天梯地图
    智能算法-遗传算法
    L2-012. 关于堆的判断
    L2-010. 排座位
    计算几何初步-三点顺序
    L3-001. 凑零钱
    靠二进制画几何[图论]
    【排序】
    欧拉路与欧拉回路
    Test on 2016/09/26
  • 原文地址:https://www.cnblogs.com/cyq1162/p/10612508.html
Copyright © 2011-2022 走看看