2010 年 Web 部署项目的奇怪问题
我正在将我的 CI 配置升级到 Web 部署项目 2010(从 2008 年开始),
我在构建过程中遇到了一个非常奇怪的问题,如下所示 - 我已经研究了几个小时但没有解决,并且我开始认为问题出在其他地方......)
C:\Program Files (x86)\MSBuild\Microsoft\WebDeployment\v10.0\Microsoft.WebDeployment.targets(103, 46): 错误 MSB4092: 在条件下的字符位置 174 处发现意外标记“)” “'$(_ExcludeWAPBaseIntermediateOutputPath)'=='' 和 !$([System.IO.Path]::IsPathRooted($(_ExcludeWAPBaseIntermediateOutputPath)))"。
i'm in the process or upgrading my CI configuration to Web Deployment projects 2010 (from 2008)
i'm geting a really strange issue durin build as shown below - i've been looking into it a a few hours to no resolve, and am starting to think the issue is elsewhere...)
C:\Program Files (x86)\MSBuild\Microsoft\WebDeployment\v10.0\Microsoft.WebDeployment.targets(103, 46): error MSB4092: An unexpected token ")" was found at character position 174 in condition "'$(_ExcludeWAPBaseIntermediateOutputPath)' == ''
And !$([System.IO.Path]::IsPathRooted($(_ExcludeWAPBaseIntermediateOutputPath)))".
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
我也面临着同样的问题。通过使用正确的 MSBuild 工具版本(4.0)解决
I was also facing the same issue. Resolved by using correct tool version for MSBuild which is 4.0
出乎意料的是,我认为您的 CI 服务器不使用 MSBuild 来运行构建,因此属性函数
$([System.IO.Path]::IsPathRooted(...)
是无法识别。检查 MSBuild 4 是否是您的 CI 服务器使用的版本。
Out of the blue, I think that your CI server doesn't use MSBuild to run the Build, so the property function
$([System.IO.Path]::IsPathRooted(...)
is not recognized.Check that MSBuild 4 is the version used by your CI server.
尽管我选择使用 MSBUILD 版本 4 和 MSBUILD 工具 4.0,但它仍然失败 - 升级到最新版本的 TeamCity 后,所有问题都消失了:)
Although i had selected to use MSBUILD version 4 and the MSBUILD tools 4.0 it still failed - upon upgrading to the latest version of TeamCity all the issues went away :)
如果您使用 Visual Studio 命令提示符运行 MSBuild,请确保它是“Visual Studio 命令提示符 (2010)”
If you are using a Visual Studio command prompt to run MSBuild, make sure that it is a "Visual Studio Command Prompt (2010)"
我在旧解决方案上使用 Nant,需要在 nant 中设置 Fx 版本
I was using Nant on an old solution and needed to set the Fx version in nant