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 framework v2.0.50727 msbuild.exe' '@"d: buildagent work 2f016459feee51ce build buildsolution.msbuild.teamcity.msbuild.tcarg Work 2f016459feee51ce build buildsolution.msbuild.teamcity.patch.tcprojx "'Working dir =' d: buildagent work 2f016459feee51ce 'microsoft (r) build engine version 2.0727.4016 [
لقد أصلحت مشكلة 2.0 msbuild عن طريق الإضافة إلى ملف.
env.MSBuild=%system.DotNetFramework4.0_x86_Path%
أعد تشغيل الخدمة بعد ذلك وحل المشكلة.
نصائح أخرى
لسوء الحظ ، لا يحزمون أهداف WebApplications. لا يمكنني العثور على SDK الذي يتم تعبئته هذه الأهداف دون تثبيت VS ... لا توجد طريقة. لا أفهم لماذا يجعل MS CI صعبة للغاية.