2017-04-07 20 views
7

Milletler Ben ilk olarak 2012 yılında oluşturulan bir dizi hizmet, hangi yıl aşağı - Vs2010, Vs2013 & Vs2015 ile sorunsuz bir şekilde inşa ettik.MSBuild.Community.Tasks sorunu

Ben Vs2017 ile inşa etmeye çalıştığımda MSBuild.Community.Tasks.Attrib görev montaj düzeneği C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\MSBuildCommunityTasks klasörü altında yaşayan den yüklenemedi

olsun, ancak hiçbir MSBuildCommunityTasks klasör var \2017\Professional\MSBuild klasörünün altında.

İşte Vs2015 ve Vs2017 arasında değişti ne tam hata

C:\working\MySolution\build\Build.proj" (default target) (1) -> 
(SetAssemblyVersion target) -> 
    C:\working\MySolution\build\Build.proj(100,5): error MSB4062: The "MSBuild.Community.Tasks.Attrib" task could not be loaded from the assembly C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\MSBuildCommunityTasks\MSBuild.Community.Tasks.dll. 
    Could not load file or assembly 'file:///C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\MSBuildCommunityTasks\MSBuild.Community.Tasks.dll' or one of its dependencies. 
    The system cannot find the file specified. Confirm that the <UsingTask> declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask. 

var?
Bunu düzeltmek için ne yapmam gerekiyor?

+1

Ana değişiklik, yükleme yoludur. Artık bağımsız derleme araçları yüklemesi dışında, bir basım klasörü dahil olmak üzere bir VS klasörü altında yuvalanmıştır. Sürüm notları için [MSBuild sürüm notları] 'na (https://docs.microsoft.com/en-us/visualstudio/msbuild/what-s-new-in-msbuild-15-0) bakın. Sorununuza, hedeflerin doğru yeni konuma yerleştirilmemesi neden olabilir. Azure SDK için gitmesi gereken bazı yararlı önerileri olan git [MSBuild issue] (https://github.com/Microsoft/msbuild/issues/1888) adresinde açık bir sorun var. –

+0

Teşekkürler Siobhan, Pazartesiyi kontrol edeceğim. –

+0

'MSBuildCommunityTasks' adlı dosyayı burada görüntüleyebilirsiniz. "C: \ Program Files (x86) \ MSBuild \ MSBuildCommunityTasks" klasörünü kopyalayın: C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ Community \ MSBuild' – wal

cevap

3

MSBuildCommunityTasksPath özelliğinin açıkça ayarlanması sorunu ortadan kaldırır.

Bunu build.proj dosyasının en üstünde yapıyorum. \ Program Files (:

<MSBuildCommunityTasksPath>$(trunk)\Ref\Build\MSBuildCommunityTasks</MSBuildCommunityTasksPath> 
1

uzantıları büyük olasılıkla C' de yüklenir (tarihi nedenlerle bunu gövde altındaki bir konuma ayarlanır, o yüzden bizim repo topluluk inşa görevleri tutmak) 86) \ MSBuild'. Bu yüzden şu anda değişkeni projemde açıkça bir geçici çözüm olarak ayarlıyorum.

<MSBuildExtensionsPath>C:\Program Files (x86)\MSBuild</MSBuildExtensionsPath>