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玩的快乐。

  • 相关阅读:
    在Centos 7下编译openwrt+njit-client
    开博随笔
    Chapter 6. Statements
    Chapter 4. Arrays and Pointers
    Chapter 3. Library Types
    Chapter 2.  Variables and Basic Types
    关于stm32不常用的中断,如何添加, 比如timer10 timer11等
    keil 报错 expected an identifier
    案例分析 串口的地不要接到电源上 会烧掉
    案例分析 CAN OPEN 调试记录 进度
  • 原文地址:https://www.cnblogs.com/cyq1162/p/10612508.html
Copyright © 2011-2022 走看看