asp.net - تحميل - www visual basic




لم يتم العثور على v11.0 \ WebApplications \ Microsoft.WebApplication.targets عندما يشير الملف فعلياً إلى v10 (8)

أولا بعض الخلفية. في نهاية عام 2012 ، قمنا بتحويل الحل vs2008 الخاص بنا إلى الإصدار vs2010 ولكننا لا نزال نهدف إلى .NET 3.5. (أنا لا أعرف سوى أحدث وأعظم هنا!)

لم نواجه أي مشاكل في هذا الإعداد حتى قبل بضعة أسابيع عندما بدأ الأشخاص في الحصول على هذه الأخطاء:

"foo.csproj" (Rebuild target) (16:5) ->
  C:\...\foo.csproj(142,3): error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the declaration is correct, and that the file exists on disk.

الشيء المثير للاهتمام هو أنه إذا نظرت إلى ملف المشروع ، فإنه يشير إلى الإصدار 10 الذي يبدو منطقيًا لأننا لا نستخدم Visual Studio 2012.

ضرب هذا الخطأ العديد منا في وقت واحد وحتى على فروع رمز القديمة التي لم تتغير في الأشهر.

أظن أن بعض التحديثات قد تم دفعها إلى أجهزتنا التي تربك الأشياء ولكنني لا أعرف ما الذي يجب فعله حيال ذلك.

الحل على المدى القصير هو تثبيت VS 2012 وعدم استخدامه ، لكنني آمل في شيء أنظف قليلاً من ذلك.


أثناء البحث عن كيفية حل هذه المشكلة ، أوصى الجميع تقريبًا بنسخ المجلد MSBUILD المفقود أو تثبيت بعض SDK لبعض الإصدارات.

لحسن الحظ ، لقد عثرت على هذا المنشور المساعد الرائع بقلم دونوفان براون: http://donovanbrown.com/post/So-sick-of-MicrosoftWebApplicationtargets-was-not-found-build-errors!

باختصار ، تكمن الفكرة في تكوين إصدار VisualStudio الذي يجب أن تستخدمه البنية في تعريف البنية:

النقر بزر الماوس الأيمن -> "تعديل تعريف الإنشاء ..."

انتقل إلى "Procss" -> "3. Advanced"

وتعيين "MSBuild وسيطات" مع

/p:VisualStudioVersion=12.0

أنا واجهت نفس المشكلة مع Visual Studio 2013. وتبين أنني كنت تستخدم الإصدار القديم من MSBuild - الذي يأتي مع .NET Framework - من سطر الأوامر. تقوم Microsoft الآن بإصدار MSBuild كجزء من Visual Studio نفسه وأيضاً كمثبت منفصل ( http://blogs.msdn.com/b/visualstudio/archive/2013/07/24/msbuild-is-now-part-of-visual-studio.aspx ).

كان الحل لاستخدام الإصدار الجديد من MSBuild.exe الموجود في C:\Program Files (x86)\MSBuild\12.0\Bin . بمجرد أن فعلت ذلك ، اختفت جميع الأخطاء الأهداف.

تعديل 1

كما ذكر في التعليقات ، كل إصدار جديد من MSBuild يجلب معه دليل جديد. بالنسبة لـ Visual Studio 2015 ، استخدم C:\Program Files (x86)\MSBuild\14.0\Bin .

تحرير 2

كما ذكر في التعليقات ، لـ Visual Studio 2017 ، استخدم C:\Program Files (x86)\Microsoft Visual Studio\2017\<Edition>\MSBuild\15.0\Bin\MSBuild.exe .


حصلت على هذا الخطأ في نهاية نوفمبر دون إجراء أية تغييرات على تكوين تثبيت TeamCity الخاص بي أو تثبيت MSBuild أو التعليمات البرمجية المصدر. على خادم الإنشاء الخاص بي لم يتم تثبيت Visual Studio حتى ، وكان التغيير من VS2010 إلى VS2012 في نهاية أغسطس دون أي مشاكل في ذلك الوقت.

إصدار MSBuild الخاص بي هو 4.0.30319.18408 ، خادم الإنشاء الخاص بي هو Windows Server 2008 R2 SP1 مع TeamCity v6.5.3.

أنا حل المشكلة التي تم إصدارها ببساطة عن طريق نسخ المجلد v11 من خادم إنشاء آخر لم يتأثر.

أعتقد أن هذا يمكن أن يحدث بطريقتين:

  1. تم تحديث شيء مما تسبب في حذف مجلد v11. هل يمكن أن يكون Windows Update على .NET أم شيء ما؟

  2. تم تحديث شيء الذي غيّر توصيف TeamCity / MSBuild الخاص بي من استخدام الإصدار v10 إلى الإصدار v11 وتوقف عمل البنايات لأن V11 لم تكن موجودة.

لقد حصلت على تحديث لبرنامج .NET Framework 4.5.1 في 3 ديسمبر ، فهل هذا هو السبب؟

Brgds

جوناس


حل بسيط لهذه المشكلة:

انتقل إلى المسار التالي:

C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio

سترى أحدث إصدار V10.0 ، v11.0 ، v12.0 اعتمادًا على تثبيت Visual Studio 2010 أو 2012 أو 2013.

نسخ مجلد WebApplications من أي إصدار أحدث من الدليل ولصق إلى أخرى.

يجب حل القضايا الخاصة بك.


كان لي نفس القضية. ثابت من خلال الذهاب من خلال الحلول المذكورة أعلاه. سبب المشكلة لأن الإصدار المناسب من أدوات Visual Studio (BuildTools) غير متوفر على خادم Build. كما ذكر أعلاه ، يمكن حل هذا عن طريق تثبيت BuildTools ولكن ليس الخيار في حالتي.

هنا بديل آخر - استخدام Nuget

Install-Package MSBuild.Microsoft.VisualStudio.Web.targets -Version 14.0.0.3

حدد مشروع البدء وقم بتثبيت web.targets استنادًا إلى إصدار Visual Studio المستخدم. سيتم تعديل الملفات التالية بما في ذلك التغييرات المطلوبة

في packages.config:

<package id="MSBuild.Microsoft.VisualStudio.Web.targets" version="14.0.0.3" targetFramework="net45" />

في .csproj:

<Import Project="..\packages\MSBuild.Microsoft.VisualStudio.Web.targets.14.0.0.3\build\MSBuild.Microsoft.VisualStudio.Web.targets.props" Condition="Exists('..\packages\MSBuild.Microsoft.VisualStudio.Web.targets.14.0.0.3\build\MSBuild.Microsoft.VisualStudio.Web.targets.props')" />

أتمنى أن يساعدك هذا!!! حظا طيبا وفقك الله،

في صحتك،

بافان


لقد علقت مؤخرا مع نفس المشكلة. والاستنتاج الخاص بي هو أن كل إصدار من VS (v10 ، v11 ، v12) يغير مسار بناء متغير ، مثل MSBuildBinPath .

لذلك فإن تحديد الإصدار الدقيق لـ VS ليس اختراقاً ، لأنك قد لا تملك حتى الإصدار المناسب من الملفات المثبتة. لذلك من الأفضل تحديد المعلمة واستخدام الأهداف الموجودة على جهازك.

في بعض الحالات النادرة ، قد تحتاج إلى تثبيت إصدار محدد من حزمة VS و Web Deploy. في حالتي كان الإصدار فقط يكفي لحل المشكلة.


هاك ، ولكن حلها عن طريق نسخ: c: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ WebApplications *. * إلى c: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v11.0 \تطبيقات الويب*.*


يمكنك إضافة الخاصية VisualStudioVersion مثل هذا:

<ItemGroup>
  <ProjectToBuild Include="$(MSBuildProjectDirectory)\..\MySolution.sln">
    <Properties>Configuration=$(BuildConfiguration);WarningLevel=0;VisualStudioVersion=12.0</Properties>
  </ProjectToBuild>
</ItemGroup>
<MSBuild Projects="@(ProjectToBuild)" Targets="Rebuild"/>




visual-studio-2012