TeamCity的MSBuild的4.0帮助
-
26-09-2019 - |
题
我需要一些帮助,我的MSBuild文件我创建了一个前一阵子。
所有我想要做的就是文件构建解决方案,发布解决方案里面,比复制一个项目,一个目录
在那一刻,我设置的TeamCity到.NET 4的MSBuild,MSBuild的4.0工具和86我得到一个错误,说明
错误MSB4067:元件
<ItemDefinitionGroup>
下方的元件<Project>
是无法识别的
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Run">
<Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets"/>
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets"/>
<PropertyGroup>
<OutputFolder>$(OutputDir)</OutputFolder>
<DeploymentFolder>$(DeploymentDir)</DeploymentFolder>
<CompilationDebug />
<CustomErrorsMode />
<ContentEditorsEmail />
<AdministratorsEmail />
</PropertyGroup>
<Target Name="Run">
<CallTarget Targets="Compile" />
<CallTarget Targets="Publish" />
<CallTarget Targets="Deploy" />
</Target>
<Target Name="Clean">
<ItemGroup>
<BinFiles Include="bin\*.*" />
</ItemGroup>
<Delete Files="@(BinFiles)" />
</Target>
<Target Name="Compile" DependsOnTargets="Clean">
<MSBuild Projects="WebCanvas.ZakisCatering.Website.sln"
Properties="Configuration=Release"/>
</Target>
<Target Name="Publish">
<RemoveDir Directories="$(OutputFolder)" ContinueOnError="true" />
<MSBuild Projects="WebCanvas.ZakisCatering.Website\WebCanvas.ZakisCatering.Website.csproj"
Targets="ResolveReferences;_CopyWebApplication"
Properties="Configuration=Release;WebProjectOutputDir=$(OutputFolder);OutDir=$(WebProjectOutputDir)\" />
</Target>
<Target Name="Deploy">
<RemoveDir Directories="$(DeploymentFolder)"
ContinueOnError="true" />
<ItemGroup>
<DeploymentFiles Include="$(OutputFolder)\**\*.*" />
</ItemGroup>
<Copy SourceFiles="@(DeploymentFiles)"
DestinationFolder="$(DeploymentFolder)\%(RecursiveDir)" />
</Target>
</Project>
解决方案
我收到错误代码太,虽然抱怨不同的元素:
错误MSB4067:元件
<ArtifactAssemblies>
下方的元件<ItemGroup>
是无法识别的
我也注意到,TeamCity的被调用2.0版本的MSBuild,哪个可以解释为什么的MSBuild与XML挣扎。
'C:\的Windows \ Microsoft.NET \框架\ V2.0.50727 \ MSBuild.exe' “@ “d:\ BuildAgent \工作\ 2f016459feee51ce \编译\ BuildSolution.msbuild.teamcity.msbuild.tcargs” “d:\ BuildAgent \工作\ 2f016459feee51ce \编译\ BuildSolution.msbuild.teamcity.patch.tcprojx”” 工作DIR = 'd:\ BuildAgent \工作\ 2f016459feee51ce' 微软(R)构建引擎版本 2.0.50727.4016 [微软.NET Framework版本2.0.50727.4200]
我通过向固定在2.0的msbuild问题\ CONF \ buildagent.properties队的城市生成代理机上的文件,执行以下操作:
env.MSBuild=%system.DotNetFramework4.0_x86_Path%
重新启动后的服务,和问题解决了。
其他提示
不幸的是,他们没有打包的web应用的目标。 我无法找到一个具有这些目标而无需安装VS ...没办法打包的SDK。 我不明白为什么MS使得CI如此困难。