我正在Jenkins的构建步骤中构建一个NuGet包(虽然Jenkins可能不相关)。
我正在运行这样的NuGet命令行:
NuGet Pack MyProject.csproj
在同一文件夹中还有一个MyProject.nuspec文件,我使用了一些变量,如$ id $,$ version $等。
我的nuspec只有几个文件,如:
<files>
<file src="..\..\Build\MyProject.dll" target="lib\net40\MyProject.dll" />
<file src="..\..\Build\MyProject.pdb" target="lib\net40\MyProject.pdb" />
<file src="..\..\Build\MyProject.XML" target="lib\net40\MyProject.XML" />
</files>
我的问题是,当我用7zip检查构建的nupkg内容时,我注意到有其他文件(dll,pdb,xml等)恰好位于我从中提取文件的Build文件夹中。< / p>
这些文件来自之前的构建步骤,最终将用于其他NuGet包中(但我不希望它们包含在此主包中)。
什么会导致NuGet在nupkg中添加额外的文件?
答案 0 :(得分:3)
从项目文件打包时,它将在项目中包含标记为内容的内容。此外,您的nuspec文件不需要为该项目添加xml pdb和dll,除非它不在TargetPath(msbuild属性)中。