Nuspec文件目标绝对路径

用户名

我正在写.nuspec文件,并且在安装软件包时必须将文件复制到特定的绝对路径。

该代码段如下所示:

<files>
    <file src="myFolder\myFile.txt" target="C:\SomeFolder\myFolder" />
</files>

运行时nuget pack,出现以下错误(这是-Verbosity detailed):

Target path 'C:\SomeFolder\myFolder' contains invalid characters.

System.Exception:目标路径'C:\ SomeFolder \ myFolder'包含无效字符。在NuGet.Packaging.PackageBuilder..ctor处的NuGet.Packaging.Manifest.ReadFrom(Stream stream,Func 2 propertyProvider, Boolean validateSchema) at NuGet.Packaging.PackageBuilder.ReadManifest(Stream stream, String basePath, Func2 propertyProvider)处的NuGet.Packaging.Manifest.Validate(清单清单)处(String path,String basePath,Func`2 propertyProvider,Boolean includeEmptyDirectories,布尔值确定性),位于NuGet.Commands.PackCommandRunner.CreatePackageBuilderFromNuspec(字符串路径),位于NuGet.Commands.PackCommandRunner.BuildFromNuspec(字符串路径),位于NuGet.Commands.PackCommandRunner.BuildPackage(),位于NuGet.CommandLine.PackCommand.ExecuteCommand() NuGet.CommandLine.Program.MainCore处的NuGet.CommandLine.Command.Execute()处的NuGet.CommandLine.Command.ExecuteCommandAsync()(String workingDirectory,String [] args)

我想这与使用绝对路径有关,但是

1)这曾经在一年前起作用(我不记得那时的确切版本的nuget)

2)如何指定绝对路径?

我正在使用最新的nuget版本,该版本是我今天早晨下载的。

用户名

事实证明,这是设计使然,因为他们考虑到安全方面的考虑,拥有一个nuget程序包,该程序包会在安装该程序的项目范围之外更改某些内容。正如在Github中回答的那样:https : //github.com/NuGet/Home/issues/9329(也正如Mihai Albert在评论中提到的那样)

我最终使用的一种变通方法是使用相对路径打包并将该软件包安装在所需的位置。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章