tfsbuild-TFS生成定义-要部署的默认web应用程序
我有两个MVC 3 web项目,一个用于移动应用程序,另一个是常规桌面web应用程序,最后添加的是移动应用程序,我有一个构建定义,每次签入代码时都会部署(门控签入) 我的问题是,由于我添加了移动设备,构建定义将该项目作为默认项目,因此我想知道是否可以指定“默认web项目”,在这种情况下,我希望部署桌面版本而不是移动设备 我想知道是否可以从构建参数中指定以下配置: /p:Configuration=Dev/p:Platform=“Any CPU”/p:DeployOnBuild=true/p:DeployTarget=MSDeployPublish/p:MSDeployPublishMethod=WMSVC/p:MsDeployServiceUrl=https://IP:Port/msdeploy.axd /p:username=xxx/p:password=xxx/p:AllowUntrustedCertificate=True/p:DeployIisAppPath=Path 在“要构建的项目”选项中,我有项目的解决方案(sln文件)tfsbuild-TFS生成定义-要部署的默认web应用程序,tfs,msbuild,tfsbuild,msbuild-4.0,build-server,Tfs,Msbuild,Tfsbuild,Msbuild 4.0,Build Server,我有两个MVC 3 web项目,一个用于移动应用程序,另一个是常规桌面web应用程序,最后添加的是移动应用程序,我有一个构建定义,每次签入代码时都会部署(门控签入) 我的问题是,由于我添加了移动设备,构建定义将该项目作为默认项目,因此我想知道是否可以指定“默认web项目”,在这种情况下,我希望部署桌面版本而不是移动设备 我想知道是否可以从构建参数中指定以下配置: /p:Configuration=Dev/p:Platform=“Any CPU”/p:DeployOnBuild=true/p:De
有什么想法吗?编辑项目文件并在项目文件内设置属性,而不是向MSBuild命令行添加其他属性。如果需要,请创建一个特定的配置以将它们放入其中,这样部署就不会总是在VisualStudio中进行
<PropertyGroup Condition="'$(BuildingInsideVisualStudio)' == false">
<DeployOnBuild>true</DeployOnBuild>
<MSDeployTarget>MSDeployPublish</MSDeployTarget>
....
....
</PropertyGroup>
我已经在.csprj文件中的最后一个propertyGroup标记下面添加了itemGroup,但是我得到了这个异常。。。元素中必需的属性include为空或缺失,您认为是否可以用另一种方式执行此操作?…比方说。。。。为我不想部署的移动站点设置False?我已经验证了此配置,但它似乎不起作用。。。。真满假bin\DEBUG;跟踪提示符4为False,其余的构建定义也为False@Jessehouwing抱歉,需要是propertygroup,而不是itemgroup,请在帖子中更正。否不能将移动项目设置为false,命令行始终优先于项目文件。你可以做些别的事情,我会更新我上面的答案。实际上,我已经应用了你上面描述的方法,效果很好。我刚刚用反向布尔条件配置了移动站点=“$(DeployDefaultWebsiteOnBuild)”==“false”,然后部署……非常感谢!
<PropertyGroup Condition="'$(BuildingInsideVisualStudio)' == false">
<DeployOnBuild Condition="'$(DeployDefaultWebsiteOnBuild)' == 'true'>true</DeployOnBuild>
<MSDeployTarget>MSDeployPublish</MSDeployTarget>
....
....
</PropertyGroup>
/p:DeployDefaultWebsiteOnBuild=true