質問

私は、私はしばらく前に作成した私の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は非常に困難にし、なぜ私は理解していません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top