【发布时间】:2012-02-16 14:59:20
【问题描述】:
大约一年后,我修改了我的一个项目,在安装程序文件名中包含颠覆修订。 我安装了 MSBuild.Community.Tasks.Targets 并修改了 csproj 文件,使其包含:
<Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets" />
...
<SvnVersion LocalPath="$(MSBuildProjectDirectory)" ToolPath="C:\cygwin\bin">
<Output TaskParameter="Revision" PropertyName="Revision" />
</SvnVersion>
...
这就像一个魅力。但是,升级到 cygwin 1.7 后,在运行构建过程时开始出现以下错误:
C:\cygwin\bin\svnversion.exe --no-newline "Z:/cygdrive/z/dev/myproject/src/winservice"
'/cygdrive/z/dev/myproject/src/winservice/Z:/cygdrive/z/dev/myproject/src/winservice' 不存在
Z:\dev\swiftarhiv\src\myproject\myprojectservice.csproj(200,5): 错误 MSB6006:“svnversion.exe”退出,代码为 1。完成构建项目
"Z:\dev\swiftarhiv\src\myprojects\myprojectservice.cspro j" (重建 目标)——失败。
我尝试将 SvnInfo 任务的 LocalPath 参数修改为“.”或“/cygdrive/z/dev/myproject/src/winservice”,但是 SvnInfo 任务有一个讨厌的习惯,就是不管你放什么都使用 windows 完整路径所以“。”解析为之前使用的路径,“/cygdrive/z/dev/myproject/src/winservice”解析为“Z:/cygdrive/z/dev/myproject/src/winservice”,这又导致了错误。
是否有我可以在 Cygwin 1.7 中设置的设置来减少我的问题?
【问题讨论】:
标签: cygwin msbuildcommunitytasks