Octopack无法使用以下xml构建
<?xml version="1.0"?>
<package >
<metadata>
<id>WebCrawlerMVC</id>
<version>1.0.0.0</version>
<title>Web Crawler</title>
<authors>lardern</authors>
<owners>Nostrum Group</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>packaging webcrawler mvc</description>
<releaseNotes>no release notes</releaseNotes>
<copyright>Copyright 2013</copyright>
</metadata>
<dependencies>
<dependency id="Ninject" version="3.0.1.10" />
<dependency id="HtmlAgilityPackHelpers" />
</dependencies>
<files src="C:\Users\lardern\Documents\Visual Studio 2010\Projects\WebCrawlerMVC\packages\Ninject.3.0.1.10\lib\net40\Ninject.dll"/>
<files src="C:\Users\lardern\Documents\Visual Studio 2010\Projects\HtmlAgilityPack\HtmlAgilityPack\HtmlAgilityPackHelpers\bin\Release\HtmlAgilityPackHelpers.dll" />
</package>
我收到的错误是
错误2命令“”C:\ Users \ lardern \ Documents \ Visual Studio 2010 \项目\ WebCrawlerMVC \ WebCrawlerMVC .. \包\ OctoPack.1.0.111 \ TOOLS \ NuGet.exe” 打包“C:\ Users \ lardern \ Documents \ Visual Studio 2010 \项目\ WebCrawlerMVC \ WebCrawlerMVC \ WebCrawlerMVC.nuspec” -OutputDirectory“bin”-basePath“C:\ Users \ lardern \ Documents \ Visual Studio 2010 \ Projects \ WebCrawlerMVC \ WebCrawlerMVC”-Version“1.0.0.0” -NoPackageAnalysis“退出代码1. WebCrawlerMVC
我不太清楚这意味着什么,如果我没有添加依赖项,它会在版本中构建正常,否则会出现此错误。
编辑:我编辑了上面的代码,感谢发现错误的adam,但错误仍然存在。 同时取出每个依赖项以查看是否导致错误,两次都失败。
答案 0 :(得分:4)
如果您查看完整的构建日志,您应该能够找到更多信息,而不仅仅是上面的错误行--NuGet.exe可能会抱怨它们。
然而,八达通包裹should not include dependencies anyway。
另一个不能很好地转换为Octopus的NuGet功能是依赖项。 NuGet具有跟踪包之间的依赖关系的便利功能。例如,当像NHibernate这样的包依赖于像log4net这样的包时,就会使用它。 NuGet将安装NHibernate,解决依赖关系,并安装log4net。值得注意的是,NuGet会将它们安装到磁盘上的两个独立文件夹中:
packages/NHibernate.x.y.z packages/log4net.x.y.z
虽然这对于通过Visual Studio引用的库是有意义的,但由于与上述相同的原因,它在Octopus中没有意义。例如,如果您的Octopus应用程序包依赖于log4net,那么您将拥有:
packages/YourApp.x.y.z packages/log4net.x.y.z
在运行时,YourApp下的可执行文件或ASP.NET站点会尝试在log4net中调用方法,但由于找不到DLL而失败。虽然理论上可以使用配置文件中的探测路径来解决,但实际上最好避免这种方法。
因此,Octopus NuGet包不能具有依赖性。
相反,您需要使用的任何库都应该捆绑在包内的标准二进制文件夹
中
答案 1 :(得分:1)
答案 2 :(得分:0)
https://docs.nuget.org/create/nuspec-reference#specifying-dependencies
dependencies元素是元数据元素的子元素
我想这就是为什么你在运行nuget pack
时遇到错误的原因