我有一个TeamCity。我用msbuild为我的web项目(csproj)设置了构建, 命令行参数看起来像
/p:Configuration=%env.Configuration% / p:outputpath = bin2 / p:DeployOnBuild = True / p:IsDesktopBuild = false / P:DeployTarget = MSDeployPublish / P:MsDeployServiceUrl = httppath / p:AllowUntrustedCertificate = True / p:MSDeployPublishMethod = WMSVC / p:UserName = xxx / p:密码= xxx
但始终构建faild错误:
Step 1/1: MSBuild (7s)
pathxxx\MyPortal.csproj.teamcity: Build target: Build (4s)
[pathxxx\MyPortal.csproj.teamcity] _CopyWebApplicationLegacy
[_CopyWebApplicationLegacy] Copy
[Copy] C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets(178, 5): error MSB3021: Unable to copy file "Bin\MyPortal.dll" to "bin2\_PublishedWebsites\MyPortal.csproj\Bin\MyPortal.dll". Could not find a part of the path 'Bin\MyPortal.dll'.
[Copy] C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets(178, 5): error MSB3021: Unable to copy file "Bin\MyPortal.pdb" to "bin2\_PublishedWebsites\MyPortal.csproj\Bin\MyPortal.pdb". Could not find a part of the path 'Bin\MyPortal.pdb'.
[pathxxx\MyPortal.csproj.teamcity] Project pathxxx\MyPortal.csproj.teamcity failed.
[Step 1/1] Step MSBuild failed
如果我删除/ p:outputpath = bin2参数,我会看到其他错误之王,
未为项目设置OutputPath属性 'MyPortal.csproj.teamcity'。请检查 确保您已指定有效的Configuration组合 和该项目的平台。 Configuration ='TestEnv'Platform ='Any 中央处理器'。您可能会看到此消息,因为您正在尝试构建 没有解决方案文件的项目,并指定了非默认值 此项目不存在的配置或平台。
我正在使用xml转换,我确保TestEnv存在于所有项目内部解决方案中。
它可能是什么?以及如何解决它?
感谢。
答案 0 :(得分:1)
您是否为所有项目添加了配置testenv?因为它缺少 OutputPath 属性。或者你可以只将属性添加到初始命令,例如/p:OutputPath=..\output
。