Nuget.NugetPack 不使用外部包
Nuget.NugetPack not working with external packages
我正在尝试将下载的库保存到外部包中。
所以我在解决方案文件中添加了 create .nugetconfig 文件。它不在 .nuget 文件夹中,因为它似乎不再有效。
除 Pack 功能外,一切都是错误的
<Target Name="Pack">
<NuGet.NuGetPack ToolPath="$(NgetToolPath)" File="$(NuspecPackage)"/>
</Target>
错误消息是:“NuGet.Config 不是有效的 XML。路径:'C:\BaseFolder\MySolution\NuGet.Config'。
缺少根元素。"
这很奇怪,因为所有其他目标都有效。 NuGet.Config 应该在 BaseFolder 而不是 MySolution 下。知道为什么 NuGet.Pack 在 MySolution 下查找吗?不幸的是,我无法指定配置文件的位置。 NuGet.NuGetRestore和NuGet.NuGetInstall可以指定配置文件!
令人沮丧,任何帮助。
这毫无意义。为什么要这样做?
This is weird because every other target works. And NuGet.Config
should be under BaseFolder and not MySolution. Any ideas why
NuGet.Pack is looking under MySolution?
到目前为止,要对你的解决方案做一些操作,你可以在解决方案文件夹下新建一个Nuget.config
文件(它是由 nuget 机制设计)。它将应用于解决方案子目录中的所有项目。
您可以参考this link了解更多关于nuget.config
文件的信息。
除此之外,不用NuGet.NuGetPack
改外包,太旧了。您可以在新的 Nuget.config
文件中添加这些节点来更改它:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<config>
<add key="repositoryPath" value="C:\External" /> //change the path of packages of the solution
</config>
<packageRestore>
<add key="enabled" value="true" /> //enable or disable package restore
<add key="automatic" value="true" />
</packageRestore>
</configuration>
更多关于自定义nuget配置设置的信息,您可以参考this link。
注意完成这些后,您应该关闭 VS 实例,然后重新启动它以启用这个新文件。
另外,解决方案文件夹下的nuget.config
会作用于当前解决方案。
如果你想对你PC上的所有解决方案进行操作,你可以将nuget.config
文件放在你创建所有解决方案的根目录下,这样它就可以应用于这些解决方案,
如果你想它适用于所有项目,解决方案在当前 PC 用户上,你应该在 global nuget.config 文件中添加这些:
C:\Users\xxx<user account>\AppData\Roaming\NuGet\NuGet.Config
我正在尝试将下载的库保存到外部包中。
所以我在解决方案文件中添加了 create .nugetconfig 文件。它不在 .nuget 文件夹中,因为它似乎不再有效。
除 Pack 功能外,一切都是错误的
<Target Name="Pack">
<NuGet.NuGetPack ToolPath="$(NgetToolPath)" File="$(NuspecPackage)"/>
</Target>
错误消息是:“NuGet.Config 不是有效的 XML。路径:'C:\BaseFolder\MySolution\NuGet.Config'。 缺少根元素。"
这很奇怪,因为所有其他目标都有效。 NuGet.Config 应该在 BaseFolder 而不是 MySolution 下。知道为什么 NuGet.Pack 在 MySolution 下查找吗?不幸的是,我无法指定配置文件的位置。 NuGet.NuGetRestore和NuGet.NuGetInstall可以指定配置文件!
令人沮丧,任何帮助。
这毫无意义。为什么要这样做?
This is weird because every other target works. And NuGet.Config should be under BaseFolder and not MySolution. Any ideas why NuGet.Pack is looking under MySolution?
到目前为止,要对你的解决方案做一些操作,你可以在解决方案文件夹下新建一个Nuget.config
文件(它是由 nuget 机制设计)。它将应用于解决方案子目录中的所有项目。
您可以参考this link了解更多关于nuget.config
文件的信息。
除此之外,不用NuGet.NuGetPack
改外包,太旧了。您可以在新的 Nuget.config
文件中添加这些节点来更改它:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<config>
<add key="repositoryPath" value="C:\External" /> //change the path of packages of the solution
</config>
<packageRestore>
<add key="enabled" value="true" /> //enable or disable package restore
<add key="automatic" value="true" />
</packageRestore>
</configuration>
更多关于自定义nuget配置设置的信息,您可以参考this link。
注意完成这些后,您应该关闭 VS 实例,然后重新启动它以启用这个新文件。
另外,解决方案文件夹下的nuget.config
会作用于当前解决方案。
如果你想对你PC上的所有解决方案进行操作,你可以将nuget.config
文件放在你创建所有解决方案的根目录下,这样它就可以应用于这些解决方案,
如果你想它适用于所有项目,解决方案在当前 PC 用户上,你应该在 global nuget.config 文件中添加这些:
C:\Users\xxx<user account>\AppData\Roaming\NuGet\NuGet.Config