2016-07-22 30 views
12

Çözümümüzü TeamCity/MSBuild kullanarak oluşturmaya çalışıyorum. Bir PCL'deki bazı varlıkları bir mobil istemciyle paylaşan bir WebAPI projesi. Ben, ben oluşturma sırasında bir hata alıyorum ben (Building Portable Class Library Project in build server fails)hatası APPX3212: 'Portable 7.0' için SDK kök klasörü bulunamıyor

Ancak

sıralama yaptıktan düşünüyorum buildserver yüklü PCL referans kütüphaneleri, alma etrafında birkaç uyarılar vardır bkz

[11:20:49][Doctrina.Pcl.Entities\Doctrina.Pcl.Entities.csproj] _GetSdkToolPaths [11:20:49][_GetSdkToolPaths] GetSdkPropertyValue *[11:20:49][GetSdkPropertyValue] C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\AppxPackage\Microsoft.AppXPackage.Targets(975, 5): error APPX3212: SDK root folder for 'Portable 7.0' cannot be located. See http://go.microsoft.com/fwlink/?prd=12560&pver=1.0&plcid=0x409&ar=MSDN&sar=PlatformMultiTargeting&o1=Portable&o2=7.0 for more information.*

"yardım" bağlantısını yerde kullanışlı gitmez ve herhangi bir çözüm bulma açısından çok google dayanıklı görünmektedir: taşınabilir sınıf kütüphanesi aşağıdaki gibi.

Visual Studio 2015'in hiç yapı-sunucuda yüklü olmaması, ancak diğer ilgili SO sorusuna göre, yerel bilgisayarımdan referans dizini kopyalanan PortableClassLibrary araçlarını yükledim vb.

Yardım lütfen?

+0

Tamam. Yapılandırma sunucusuna "VS2015 Community Edition" ı yükleyerek bu hatayı çözdüm, bu yüzden açıkça VS'nin bir parçası olan Xamarin-y'in bir parçası var ama PCL araçları tarafından yüklenmiyor. Ne olduğunu bilen var mı? VS2015 CE'nin kurulması –

+1

çok zor geliyor. Şu anda aynı sorunu yaşıyorum. Keşke yöneten biri olsaydı. - Bir ödül ekledi ... belki şimdi biraz dikkat çekecek :) –

+0

Bu cevabı kontrol ettiniz mi? - http://stackoverflow.com/a/19385710/1824367 Benzer bir problem yaşadım ve benzer bir şekilde çözüme kavuştum çözüm. – mattferderer

cevap

4

.NET Standardını hedefleyen taşınabilir projeler oluşturmaya çalışırken bu hatayla karşılaştım.

  • C:

    Visual Studio yüklü yapan bir makineden kopyalayarak, benim yapı sunucuda Visual Studio kurmadan çözmek için yönetilen \ Program Files (x86) \ Microsoft SDK'leri Taşınabilir \ \ v14.0
  • C: \ Program Files (x86) \ MSBuild \ Microsoft \ Taşınabilir
  • C: Daha sonra inşa etmeye kalkışmış \ Program Files (x86) \ ReferenceAssemblies

Microsoft \ Framework.NETPortable \ bir

  • : C: \ Program Files (x86) \ MSBuild \ Microsoft Benim çözüm XProj dosyasını eklendi en kısa sürede NET Çekirdek (bu bir xproj dosya idi) ve hedefleme WebAPI projesi, ben de kopyalamak zorunda \ VisualStudio \ v14.0 DotNet
  • \
  • C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v14.0 DotNet.Web \
  • beni

biraz daha fazla ama aynı zamanda diğer sebep Projeler düzgün bir şekilde (XProj dosyası çözümünde sorunsuz çalışıyordu) doğru şekilde çalışmayı durdurdu. Fark ettiğim bir şey, .NET Core için NuGet aracı kimliği doğrulanmış NuGet beslemelerini desteklemiyor, bu yüzden feed'imde anonim erişimi etkinleştirmem gerekiyordu. Ama şimdi .NET standart projem hatayla MSB4057 hatası veriyor: "_GenerateDependencyFragmentJson" hedefi projede mevcut değil.

Bunu teşhis etmek için henüz burayı bulmama rağmen, umarım yukarıdaki bilgiler birilerine yardımcı olur. Xproj dosyaları kullanmıyor ve sadece .NET Standard projelerini kullanmaya çalışıyorsanız, Visual Studio'yu yüklemeden önce yapmanız gereken her şey olmalıdır.

Yalnızca bir yan not, bu dosyaları kopyalamak zorunda kalmadan önce Microsoft Build Tools 2015 Güncelleştirmesi 3'ü yüklemeyi denemekten kaçınmak için çok uğraştım, ancak gereken dosyaları yerine getirmesini umuyordum, ancak ne yazık ki yapmadı.Benim umutlarımı VS15'te kullanılmakta olan bir sonraki MSBuild sürümünde sabitliyorum ve araç paketi paketi, bu şeyleri ortaya çıktığında gereken herşeye sahip olacağını umuyoruz, çünkü güncelleme yapıyormuş gibi görünmüyor Bu destek ile 2015 Build Araçları.

+0

Aynı MSB4057'ye koşuyorum: Projede "_GenerateDependencyFragmentJson" hedefi mevcut değil. ' Bunu teşhis etmeyi gerçekten başardınız mı? Şimdiye kadar online olarak gördüğüm ama henüz test edilmemiş tek çözüm VS2015'i yapı sunucusuna kuruyor ... Bir şeyden çok kaçınmak istiyorum. –

+0

Maalesef bu sorunu daha fazla teşhis etmek için zamanım olmadı. VS2015'i sunucuya yüklemekten kaçınmanın bir yolu olacağına eminim, ancak MSBuild hedeflerini ince dişli tarakla yapmanın gerekli olduğunu ve yapı sunucusunda bulunmadığını ve kaynak kodun orada manuel olarak kopyalandı. Cevabımda bahsettiğim şeyleri böyle bulurum. –