Weird issue with Web Deployment projects 2010
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开发者_StackOverflow中文版 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)))".
I was also facing the same issue. Resolved by using correct tool version for MSBuild which is 4.0
<tasks>
<msbuild>
<executable>**C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe**</executable>
<workingDirectory></workingDirectory>
<projectFile></projectFile>
<buildArgs>/noconsolelogger </buildArgs>
<targets>RunFxcop</targets>
<logger>C:\Program Files\CruiseControl.NET\Server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
<timeout>3600</timeout>
</msbuild>
</tasks>
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.
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 :)
If you are using a Visual Studio command prompt to run MSBuild, make sure that it is a "Visual Studio Command Prompt (2010)"
I was using Nant on an old solution and needed to set the Fx version in nant
<property name="nant.settings.currentframework" value="net-4.0" />
精彩评论