0

我一直在对开源MarkdownDeep进行一些修改, 但在发布版本时遇到了麻烦——该项目包括一个使用 Nuget.exe 进行一些打包的构建后任务。

我可以从 dos 框中执行命令而不会出现错误,但该步骤总是失败(从 VisualStudio 作为发布构建配置的一部分运行时出现错误:9009。

谁能想到这是为什么?

4

1 回答 1

1

我猜想当你从命令行手动运行时,你要么,

  • 执行“本地”,工作目录是构建步骤中使用的所需路径的目录
  • 你是完全合格的路径

底线似乎是从 Visual Studio 执行时路径/s 不起作用(找不到执行操作所需的目录/文件,由于换行,PATH环境变量中不存在文件等)。

Visual Studio 中的构建前和构建后步骤“转换”为单个批处理脚本并执行,此步骤中的路径应正确括在引号中,绝对或相对指定等,但最终需要能够正确扩展/解决完整的路径。

例如,我将引用以下代码段

SvcUtil.exe 参数1 参数2 会失败

C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\SvcUtil.exe parameter1 parameter2 会失败

"C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\SvcUtil.exe" parameter1 parameter2 就可以了。

于 2012-01-30T15:23:09.710 回答