CI sunucusunda .NET 4.0 derleme sorunları


99

CI sunucusuna Visual Studio 2010 yüklemeden bir CI sunucusunda derlenen .NET 4.0 uygulamalarını edinmeyi başaran var mı?

.NET 4.0 için SDK yoktur. CI Sunucusuna .NET 4.0 yüklediniz. Msbuild.exe basit projeler için çalışır ve aşağıdaki uyarıyı verir:

(GetReferenceAssemblyPaths hedefi) -> C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets (847,9): uyarı MSB3644: ".NETFramework, Version = v4.0" çerçevesi için başvuru derlemeleri bulunamadı. Bunu çözmek için, bu çerçeve sürümü için SDK veya Hedefleme Paketini kurun veya uygulamanızı, SDK veya Hedefleme Paketinin kurulu olduğu çerçeve sürümüne yeniden hedefleyin. Derlemelerin Genel Derleme Önbelleğinden (GAC) çözüleceğini ve referans derlemeleri yerine kullanılacağını unutmayın. Bu nedenle derlemeniz, istediğiniz çerçeve için doğru şekilde hedeflenmemiş olabilir.


1
Bunu bir uyarı yerine nasıl önemli bir hata yapabilirim? Derleme günlüğümüzde gizlidir ve bunun yerine mscorlib.dll hakkında bazı şifreli mesajlarla başarısız olur
Colonel Panic

Burada bununla
Neel

Yanıtlar:


128

Artık VS'yi kurmanıza gerek yok, "Windows 7 ve .NET Framework 4 için Microsoft Windows SDK" yı şimdi kurabilirsiniz.

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=6b6c21d2-2006-4afa-9702-529fa782d63b


44
Varsayılan kurulum 1,7 GB'dir, ancak bu dosyaların çoğu gereksizdir. NET Development> Intellisense ve Reference Assemblies dışında her şeyin işaretini kaldırırsanız, size yine de ihtiyacınız olan .NET 4 hedefleme paketini verecektir (yaklaşık 450 MB).
Luke Sampson

1
İmzalı derlemelerle uğraşmak için kullanışlı olan sn.exe gibi çeşitli yardımcı programları getireceğinden, .NET Geliştirme> Araçlar'ı da kontrol etmek isteyebilirsiniz.
Mykro

8
Ayrıca bir web yükleyicisi de vardır, bu nedenle yalnızca gerekli parçaları indirmeniz gerekir.
Rasmus

2
Bunun adı "Windows 7 için" olsa da, Desteklenen işletim sistemlerine dikkat çekmeye değer: Windows 7, Windows Server 2003 R2 Standard Edition (32-bit x86), Windows Server 2003 R2 Standard x64 Edition, Windows Server 2008, Windows Server 2008 R2 , Windows Vista, Windows XP Service Pack 3
Aligma

2
Bu cevap bana yardımcı olur. Burada görüldüğü gibi çözüldü sdk 7.1 yüklerken olunca farklı bir sorun vardı mathworks.com/matlabcentral/answers/95039
Ari

23

.NET 4.5 için SDK burada bulunabilir . Yükleyici, temel yetkilendirmeye sahip proxy ile iyi çalışır. Desteklenen İşletim Sistemleri: Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2

Not: Cevabım daha çok Jeremy'nin cevabına yapılan bir yoruma benziyor , ancak cevaplar hakkında yorum yapacak kadar itibarım yok.


1
Başvurulan sayfadan: "Windows SDK artık eksiksiz bir komut satırı oluşturma ortamı ile birlikte gelmiyor. Windows SDK artık ayrı olarak yüklenecek bir derleyici ve yapı ortamı gerektiriyor." Bu yüzden bunun bir yapı sunucusu çalıştırmak için yeterli olmadığını varsayıyorum.
Chris

1
Bu benim için düzeltti. Yalnızca 62,3 MB gerektiren ve SharePoint Apps dağıtımı için Windows Server 2012 R2 üzerinde yüklü bir TFS Build 2013 sunucusunda sorunsuz çalışan ".NET Framework 4.5 Yazılım Geliştirme Kiti" seçeneğini seçmeniz gerekir. FrameworkPathOverride parametresini geçersiz kılmaya gerek yoktur.
Koen Zomers

10

diğer alternatif: Net 4.0 SDK veya 2010'a kıyasla

Referans derlemeler klasörünü geliştirme makinenizden derleme sunucusuna (190MB) kopyalayın.

msbuild -p: FrameworkPathOverride seçeneğini kullanarak başvuru derlemeleri klasörüne işaret edin

referans derlemelerinin konumu:

C: \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.0 veya C: \ Program Files \ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.0

bunu şuradan buldu:

.NET 4.0 derleme sunucusu başvuru derlemeleri MSB3644 uyarıları

Bu hatayı alırsanız: "Microsoft.WebApplication.targets bulunamadı" - hedefi dev makinesinden kopyalamanız yeterli: https://stackoverflow.com/a/5344246/423356

derleme sunucusunda mvc3 kurulu değilse; mvc projesine "dağıtılabilir derlemeler ekle" http://haacked.com/archive/2011/05/25/bin-deploying-asp-net-mvc-3.aspx

MSTest projesini sdk veya visual studio yüklenmeden oluştururken hata alırsanız; Bununla ilgili birkaç blog yazısı var, çözümün benim için çok karmaşık olması kötü. MSTest yerine NUnit kullanıyorum


2012 sunucum .Net 4'ü yüklememe izin vermediğinden, yükleyici daha yüksek bir sürüm olduğunu söyledi. @Kite'ın söylediğini yaptım ve VS 2012 kurulduğunda sahip olduğum bir bilgisayardan kopyaladım. Bu sorunlarımı çözdü.
chdev77

0

Bu sayfada, her Visual Studio sürümü için .NET SDK'ları listelenir. http://blogs.msdn.com/b/dotnet/p/dotnet_sdks.aspx

Daha küçük bir indirme için, tam Windows SDK yerine "geliştirici paketi" veya "hedefleme paketi" ni seçin.


Geliştirici paketini veya hedefleme paketini yüklemek genel bir ipucu olabilir, ancak .NET Framework 4.0'a özgü (bu soru tamamen bununla ilgilidir) böyle bir paket yoktur ve Windows SDK kaçınılmazdır.
Lex Li
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.