【发布时间】:2015-08-27 08:13:37
【问题描述】:
我有两个 nuget 包,其中一个依赖于另一个。安装第二个时,第一个包中程序集的程序集引用被正确添加到项目引用中,但是我无法添加后一个。我的规格有问题吗?
// first
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
<metadata>
<id>first</id>
...
</metadata>
<files>
<file src="..\src\MyFirstProject\bin\v4.0\MyFirstProject.dll" target="lib\net40-client\MyFirstProject.dll" />
<file src="..\src\MyFirstProject\bin\v4.0\MyFirstProject.xml" target="lib\net40-client\MyFirstProject.xml" />
<file src="..\src\MyFirstProject\bin\v4.5\MyFirstProject.dll" target="lib\net45\MyFirstProject.dll" />
<file src="..\src\MyFirstProject\bin\v4.5\MyFirstProject.xml" target="lib\net45\MyFirstProject.xml" />
<file src="..\src\MyFirstProject\bin\v4.6\MyFirstProject.dll" target="lib\net46\MyFirstProject.dll" />
<file src="..\src\MyFirstProject\bin\v4.6\MyFirstProject.xml" target="lib\net46\MyFirstProject.xml" />
</files>
</package>
// second
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
<metadata>
<id>second</id>
...
<dependencies>
<dependency id="first" ...
</dependencies
</metadata>
<files>
<file src="..\src\MySecondProject\bin\v4.6\MySecondProject.dll" target="lib\net46\MySecondProject.dll" />
<file src="..\src\MySecondProject\bin\v4.6\MySecondProject.xml" target="lib\net46\MySecondProject.xml" />
</files>
</package>
第二个项目仅适用于 .NET4.6,因为我正在使用此版本附带的一些特定于框架的功能。我尝试将包安装到的目标项目也是一个 .NET4.6 项目。
已验证:
- 目标项目是.NET4.6
- 可以正确创建包
- 程序集位于
lib\文件夹中 - 程序集被正确打包
- Nuget 包已正确安装
- 使用正确的框架版本输入
packages.config
【问题讨论】:
标签: c# .net visual-studio nuget nuget-package