我们的应用程序的入口点程序集使用强名称密钥进行签名,因此.NET还需要对所有引用的程序集进行签名。对于那些发布未签名程序集的软件包,我们的解决方法是使用ildasm/ilasm手动签名,处理过程解释为here,并将强名称程序集签入git存储库。NuGet还原overwiting签署的DLL
在构建机器上,我们做了git pull
以获得签名的DLL,然后.nuget\NuGet.exe restore App.sln
恢复其余的软件包。 NuGet恢复没有覆盖包文件夹下的已签署/签入的程序集文件,因此我们可以很好地构建解决方案。
直到最近我才注意到,这是不工作了,只有其中一个签名的DLL nuget restore
覆盖与包附带的原始的未签名的程序集。我不明白为什么现在它的工作方式不同,以及为什么只有一个软件包发生这种情况。
NuGet restore
如何决定何时覆盖某个包的现有DLL以及何时跳过它?- 使用未签名的包时,有没有更好的方法来解决这个强烈的命名要求?
NuGet.exe版本是3.4.3。
谢谢!
包括'.nupkg'文件修复了它。谢谢! – orad