2

我正在尝试在 NuGet 包中包含一个文件,该包位于名为.m2. 当我为这个项目创建一个 Nuspec 文件时,我包括以下内容:

<files>
  <file src="$M2_REPO$\com\tunnelvisionlabs\antlr4-csharp\4.1\antlr4-csharp-4.1-complete.jar" target="tools"/>
</files>

然后,我使用以下命令行参数NuGet.exe(通过 powershell 启动):

-Prop 'M2_REPO=C:\Users\me\.m2\repository'

在这种情况下,指定的 jar 文件不包含在结果.nupkg文件中。

我已将问题缩小到.m2文件夹的名称。如果我将.m2文件夹复制到同一目录中命名的新文件夹m2,然后在命令行参数中替换为,则 jar 文件.m2包含在输出中。虽然在我的本地机器上更新 Maven 以将文件夹重定向到名为的文件夹很简单,但这种配置会导致在其他用户的机器上不容易构建的项目。m2settings.xml.m2m2

有没有办法更新.nuspec文件或命令行参数,以便 NuGet 正确打包位于名为 的文件夹下的文件.m2,而不更改文件夹的名称?

4

1 回答 1

0

只需使用-NoDefaultExcludes参数nuget pack

nuget pack Foo.nuspec -NoDefaultExcludes
于 2015-09-11T15:18:24.147 回答