我有一个非基于 .NET 的项目,我正在尝试将 nuget 融入其中以管理依赖项。因此,我必须使用 packages.config 来定义项目的依赖项。
现在,我已经完全按照我想要的方式打包和推送它,但是当我恢复包时,它只恢复我列出的packages.config中的依赖项,而不恢复该包的任何依赖项。因此,举例来说,如果我有一个应用程序 MyApp,它依赖于 Foo,然后又依赖于 Bar,那么在 MyApp 上调用 nuget Restore 不会将 Bar 放入包文件夹中。
根据CLI 文档,-Recursive 标志不适用于使用packages.config 的项目 - 这对我来说是一个问题,因为据我所知,我需要使用packages.config。或者至少,如果可以的话,我真的不想再花 3 个小时将我的所有 12 个包转换为使用不同的格式。
作为参考,以下是我的文件目前的样子:
MyApp的package.config
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Foo" version="1.0.0.0" allowedVersions="[1.0]" />
</packages>
Run Code Online (Sandbox Code Playgroud)
Foo.nuspec
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<!-- Required elements-->
<id>Foo</id>
<version>1.0</version>
<description>Foo</description>
<authors>Tesset</authors>
<dependencies>
<dependency id="Bar" version="[1.0]" />
</dependencies>
</metadata>
<files>
<file src=".\lib\Foo\**" target="lib\Foo" />
</files>
</package>
Run Code Online (Sandbox Code Playgroud)
裸藻
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<!-- Required elements--> …Run Code Online (Sandbox Code Playgroud)