我正在使用 Cruise Control 打包一个应用程序,命令是这样的
<Exec Command="$(NugetToolPath) pack "@(NuSpecs)" -OutputDirectory \\servername\PackageSource -BasePath "%(NuSpecs.RootDir)%(NuSpecs.Directory)" -NoPackageAnalysis" />
我已将错误缩小为它出现的 BasePath
-BasePath "D:\Code\Mobile_Trunk\PreCompiledWeb\Portal\Mobile LT Admin\"
我知道这个问题,因为它应该是
-BasePath "D:\Code\Mobile_Trunk\PreCompiledWeb\Portal\Mobile LT Admin"
但是因为我使用的是 .Directory 元数据,所以它总是会在最后返回一个 \
我通常不会引用基本路径,但由于目录中有空格,我别无选择。有没有解决的办法?我不知道任何其他元数据会返回完整的文件夹结构,除了我如何布置它
更新:
我来到了这个解决方案,它仍然没有帮助我了解如何解决非法路径的问题,但它确实有效。
<Exec Command="$(NugetToolPath) pack "%(NuSpecs.RootDir)%(NuSpecs.Directory)%(Nuspecs.FileName).nuspec" -OutputDirectory \\servername\PackageSource -NoPackageAnalysis" />