zoukankan      html  css  js  c++  java
  • VS2015 发布常见问题

    1. 发布时预编译

    所示如下:

    遇到的问题

      使用abp时引用了System.Collections.Immutable.dll,但是项目编译一直出错,

    排查:

      查看项目引用,可看到System.Collections.Immutable.dll来自 "packagesMicrosoft.Net.Compilers.1.0.0 ools"之下,版本为1.0比abp要使用的1.2版本低。

      引用这个原因是,nuget在查找时按序查询,最先找到的dll会被先引用,竟然无视版本号,估计是个bug。

      但和预编译有啥关系,因为开启预编译需要引用了Microsoft.Net.Compilers.1.0.0,Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0.

      而Microsoft.Net.Compilers.1.0.0依赖于

      System.Collections.Immutable.dll、System.Reflection.Metadata.dll、Microsoft.CodeAnalysis.dll、

      Microsoft.Build.Tasks.CodeAnalysis.dll、Microsoft.CodeAnalysis.CSharp.dll、Microsoft.CodeAnalysis.VisualBasic.dll

      这些组件,组件是独立特定版本的dll,才导致冲突,安装的时候控制台其实会提示,这也是疏忽的原因,导致花很长时间排错。  

    解决:

      1.升级Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0,Microsoft.Net.Compilers其实是被DotNetCompilerPlatform依赖的。

      2. 直接去掉预编译

    参考:

    https://www.cnblogs.com/liangjiang/p/7890678.html

  • 相关阅读:
    浅析MySQL二进制日志
    MySQL升级
    浅析MySQL复制
    MySQL关于exists的一个bug
    TokuDB存储引擎
    MySQL中RESET SLAVE和RESET MASTER的区别
    MySQL半同步复制
    MySQL线程池
    分析MariaDB初始化脚本mysql_install_db
    Python装饰器
  • 原文地址:https://www.cnblogs.com/xcsn/p/8438245.html
Copyright © 2011-2022 走看看