Msbuild TeamCity构建失败
今天,我尝试了很多方法来让我的构建在Teamcity工作,但都没有成功 这是我的设置 我在TeamCity中有2个构建配置Msbuild TeamCity构建失败,msbuild,teamcity,Msbuild,Teamcity,今天,我尝试了很多方法来让我的构建在Teamcity工作,但都没有成功 这是我的设置 我在TeamCity中有2个构建配置 构建解决方案 生成部署包调试 生成解决方案由SVN签入触发并生成解决方案文件。此配置工作正常 生成部署包调试将生成解决方案作为其依赖项,并具有两个(MSBuild)生成步骤。该解决方案包含两个网站:前端网站和管理网站。一个构建步骤构建前端站点,另一个构建管理站点。最终的结果是,它将组合结果放入一个zip文件中,以便部署到部署服务器(我还没有谈到这一点) 我遇到的问题是,构建
构建解决方案
生成部署包调试
生成解决方案
由SVN签入触发并生成解决方案文件。此配置工作正常
生成部署包调试
将生成解决方案
作为其依赖项,并具有两个(MSBuild)生成步骤。该解决方案包含两个网站:前端网站和管理网站。一个构建步骤构建前端站点,另一个构建管理站点。最终的结果是,它将组合结果放入一个zip文件中,以便部署到部署服务器(我还没有谈到这一点)
我遇到的问题是,构建部署包调试
配置无法尝试构建第一个站点。这就是错误:
[18:40:25]Step 1/2: Web (MSBuild) (29s)
[18:40:28][Step 1/2] x.Web\x.Web.csproj.teamcity: Build target: Build (27s)
[18:40:50][x.Web\x.Web.csproj.teamcity] MvcBuildViews (4s)
[18:40:50][MvcBuildViews] AspNetCompiler (4s)
[18:40:55][AspNetCompiler] C:\BuildAgent\work\252ec59002ecc2d\x.Web\obj\debug\csautoparameterize\original\web.config(39, 0): error ASPCONFIG: It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS.
[18:40:55][x.Web\x.Web.csproj.teamcity] Project x.Web\x.Web.csproj.teamcity failed.
[18:40:55][Step 1/2] Step Web (MSBuild) failed
以下是构建参数->系统属性
Name Value
system._PackageTempDir c:\deploypackage
system.Configuration Debug
system.CreatePackageOnPublish True
system.DeployIisAppPath Debug
system.DeployOnBuild True
system.PackageLocation c:\buildshares\Debug\Debug.zip
下面是我为解决这个问题所做的 我的项目文件中已经有了这个
<Target Name="MvcBuildViews" AfterTargets="AfterBuild" Condition="'$(MvcBuildViews)'=='true'">
<AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" />
</Target>
但我还需要补充一点
<Target Name="AfterBuild">
<RemoveDir Directories="$(BaseIntermediateOutputPath)" />
</Target>
这样做解决了问题
我希望这有助于其他在TeamCity工作的人。为什么投反对票?我问了一个有效的问题,提供了大量相关的细节。有很多答案可以解决这个问题,但这是唯一一个对我有效的答案。我的设置是一个VS11项目,它是从VS10转换而来的,只在版本中打开了BuildMvcViews,现在正在使用发布配置文件。msbuild/p:DeployOnBuild失败,出现web.config错误(即使它确实发布了包…)。这就解决了问题,第一枪就开始了!谢谢你回来回答这个问题。她在扯我的头发