使用OctoPack提到
.nuspec文件描述NuGet包的内容。如果还没有提供,OctoPack会通过猜测项目中的一些设置来自动创建一个。
我已经运行了带有/p:RunOctoPack=true标志集的msbuild,并且期望在项目目录中看到.nuspec文件,但是它不在/bin下的项目目录或输出目录中。
在什么时候生成.nuspec?如果没有提供覆盖.nuspec,它是生成和保存的,还是处于动态状态?
发布于 2015-05-01 05:04:52
通常最好在安装NuSpec的项目根目录中创建OctoPack文件。要从命令行创建NuSpec文件,只需使用nuget.exe:
C:\temp\nuget.exe spec c:\path-to-project\solution\project\myproj.csproj这将在文件夹中创建一个myproj.csproj.nuspec文件。您可以随意编辑模板。确保在Visual中添加NuSpec,以便当TFS (或您使用的任何CI )进行构建时,NuSpec被复制,当OctoPack被触发时,NuSpec已经存在。
也就是说,如果OctoPack找不到它,它就会动态地生成一个NuSpec。您可以在GitHub上查看源代码(第234行定义了GetOrCreateNuSpecFile()方法):
正如我前面所说的,最好在解决方案/项目中创建NuSpec文件。对于Visual中不是Web应用程序的项目,在为不同项目(服务、数据库脚本、MSI、SSRS等)优化包方面还有一些工作要做。
发布于 2018-05-02 03:04:04
对我来说,它是在这个目录D:\TeamCity\buildAgent\work\a2ef8561a97cb751\obj\octopacking\MyProject.nuspec中自动生成的。
https://stackoverflow.com/questions/29919853
复制相似问题