チームシティーのMSBuild 4.0ヘルプ
-
26-09-2019 - |
質問
私は、私はしばらく前に作成した私のMSBuildファイルといくつかの助けを必要としています。
は、私がやりたいすべてのディレクトリにファイルを、ソリューションをビルドするソリューションの内側とコピーよりもプロジェクトを発行です。
現時点では、私は、.NET 4のMSBuildにチームシティーを設定4.0ツールをMSBuildの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>
は認識されないです。
私はチームシティーは、MSBuildのは、XMLで苦労している理由を説明できるのMSBuildのバージョン2.0を起動していることを通知しました。
'C:\ WINDOWS \ Microsoft.NET \ Frameworkの\ v2.0.50727の\からMSBuild.exe' 「 "D:\ BuildAgent \仕事\ 2f016459feee51ce \ビルド\ BuildSolution.msbuild.teamcity.msbuild.tcargs" @ "D:\ BuildAgent \仕事\ 2f016459feee51ce \ビルド\ BuildSolution.msbuild.teamcity.patch.tcprojx"」 作業ディレクトリ= 'D:\ BuildAgent \仕事\ 2f016459feee51ce' マイクロソフト(R)エンジンのバージョンをビルドします 2.0.50727.4016 [Microsoft .NET Frameworkのバージョン2.0.50727.4200]
私はに追加することにより、2.0のMSBuildの問題を修正しました\ confに\ buildagent.propertiesチーム都市ビルドエージェント・マシン上のファイルは、以下:ます。
env.MSBuild=%system.DotNetFramework4.0_x86_Path%
再起動後そのサービスとの問題が解決しました。
他のヒント
残念ながら、彼らはwebアプリケーションのターゲットをパッケージ化しません。 私は、VSがインストールされていない...手立てを持たずにパッケージ化され、これらの目標を持っているSDKを見つけることができません。 MSはCIは非常に困難にし、なぜ私は理解していません。