打包仅构建工具包

kkm*_*kkm 6 nuget

我正在构建一个仅包含构建工具的包:a .prop和a .target文件,以及带有MSBuild任务的dll.我指定这些文件放在nuspec文件部分的build文件夹中<file>:

<files>
  <file src="bin\Release\Acme.Build.Foo.dll" target="build" />
  <file src="MSBuild\Acme.Build.Foo.props"   target="build" />
  <file src="MSBuild\Acme.Build.Foo.targets" target="build" />
</files>
Run Code Online (Sandbox Code Playgroud)

nuspec文件Acme.Build.Foo.nuspec放在.旁边Acme.Build.Foo.csproj.

如果我使用nuget pack Acme.Build.Foo.csproj,则dll文件也会打包到lib/包的文件夹中,并在将包添加到目标项目时添加为fererence.

如果我愿意nuget pack Acme.Build.Foo.nuspec,我会失去关键字扩展的细节,$id$等等.

我可以兼顾两者吗?是否有可能(1)阻止项目输出lib/.../自动进入或(2)如果没有,至少可以防止该文件被添加为消费项目的参考?

我使用的是最新的NuGet 3.2.0.10516.

kux*_*kux 2

使用该-tool选项。所以所有其他文件都放在tools文件夹中。

nuget pack Acme.Build.Foo.csproj -tool
Run Code Online (Sandbox Code Playgroud)