Nuget nuspec不使用通配符

时间:2016-06-17 12:59:06

标签: c# xml package nuget

我正在构建一个nuget包,一切顺利,直到我尝试使用通配符导入文件夹中的所有dll。

这完美无缺

<file src="KL.Ocr.Tesseract/x86/liblept172.dll" target="content\x86"/>

然而这没有任何作用

<file src="KL.Ocr.Tesseract/x86/*.dll" target="content\x86"/>

任何帮助都会受到赞赏(我故意将dll放在内容而不是lib中,因为那是他们需要的地方)

<?xml version="1.0"?>
<package >
 <metadata>
 <id>asdf</id>
 <version>1.0.0.0</version>
 <title>asdf</title>
 <authors>asdf</authors>
 <owners>asdf</owners>
 <requireLicenseAcceptance>false</requireLicenseAcceptance>
 <description>asdf </description>
 <copyright>Copyright 2016</copyright>
 <tags>asdf</tags>
 <frameworkAssemblies>
 </frameworkAssemblies>
 <dependencies>

 </dependencies>
</metadata>
<files>
<file src="KL.Pas.Ocr.targets" target="build"/>

<file src="KL.Ocr.Pas.Host/bin/Debug/KL.Ocr.Pas.Host.dll" target="lib/net45"  />
<file src="KL.Ocr.Pas.Host/bin/Debug/KL.Ocr.Pas.Worker.exe" target="lib/net45"  />
<file src="KL.Ocr.Pas.Host/bin/Debug/KL.Pas.Ocr.Contracts.dll" target="lib/net45"  />
<file src="KL.Ocr.Pas.Host/bin/Debug/KL.Ocr.Tesseract.dll" target="lib/net45"  />
<file src="KL.Ocr.Pas.Host/bin/Debug/Tesseract.dll" target="lib/net45"  />

<file src="KL.Ocr.Tesseract/x64/*.dll" target="build\x64"/>    
<file src="KL.Ocr.Tesseract/x86/*.dll" target="build\x86"/>    
<file src="KL.Ocr.Tesseract/tessdata/*.*" target="build\tessdata"/>
</files>
</package>

1 个答案:

答案 0 :(得分:2)

我假设您正在Windows上生成NuGet包。

如果切换到使用反斜杠而不是正斜杠,那么它将起作用。

<file src="KL.Ocr.Tesseract\x64\*.dll" target="build\x64"/>

以上工作正常。使用正斜杠似乎不起作用。