NuGet.org hesabıyla ilgili sorular gibi NuGet.org ile ilgili sık sorulan sorular için bkz . sık sorulan sorular NuGet.org.
Genel
NuGet'i çalıştırmak için ne gereklidir?
Hem kullanıcı arabirimi hem de komut satırı araçlarıyla ilgili tüm bilgileri Yükleme kılavuzunda bulabilirsiniz.
NuGet Mono'ya destek oluyor mu?
komut satırı aracı, nuget.exe
genellikle Windows altında derlenip çalışır. NuGet, kullanarak mono
Unix işletim sistemlerinde çalışabilir, ancak NuGet'in Destek İlkesi tarafından resmi olarak desteklenmez.
Mono, sahipliği Wine'a devretti ve artık Microsoft tarafından korunmadı.
Bir paketin ne içerdiğini ve uygulamam için kararlı ve yararlı olup olmadığını nasıl belirleyebilirim?
Paket hakkında bilgi edinmek için birincil kaynak, nuget.org (veya başka bir özel akış) üzerindeki listeleme sayfasıdır. nuget.org üzerindeki her paket sayfası paketin açıklamasını, sürüm geçmişini ve kullanım istatistiklerini içerir. Paket sayfasındaki Bilgi bölümünde, paketin nasıl kullanıldığını öğrenmenize yardımcı olmak için genellikle birçok örnek ve başka belge bulabileceğiniz projenin web sitesinin bağlantısı da bulunur.
Daha fazla bilgi için bkz . Paketleri bulma ve seçme.
Visual Studio'da NuGet
NuGet farklı Visual Studio ürünlerinde nasıl desteklenir?
- Windows üzerinde Visual Studio, Paket Yöneticisi kullanıcı arabirimini ve Paket Yöneticisi Konsolunu destekler.
- Mac için Visual Studio'da açıklandığı gibi yerleşik NuGet özellikleri vardırProjenize bir NuGet paketi ekleme.
- Visual Studio Code 'un (tüm platformlar) doğrudan NuGet tümleştirmesi yoktur. NuGet CLI veya dotnet CLI kullanın.
- Azure DevOps, NuGet paketlerini geri yüklemek için bir derleme adımı sağlar. Azure DevOps'ta özel NuGet paket akışlarını da barındırabilirsiniz.
NuGet araçlarının yüklü tam sürümünü kontrol Nasıl yaparım??
Visual Studio'da Microsoft Visual Studio Hakkında Yardım > komutunu kullanın ve NuGet Paket Yöneticisi yanında görüntülenen sürüme bakın.
Alternatif olarak, Paket Yöneticisi Konsolunu (Araçlar > NuGet Paket Yöneticisi Paket Yöneticisi > Konsolu) başlatın ve NuGet hakkında sürüm dahil bilgileri görmek için girin$host
.
NuGet hangi programlama dillerini destekler?
NuGet genellikle .NET dilleri için çalışır ve .NET kitaplıklarını bir projeye getirmek için tasarlanmıştır. Bazı proje türlerinde MSBuild ve Visual Studio otomasyonlarını da desteklediği için, çeşitli derecelerde diğer projeleri ve dilleri de destekler.
NuGet'in en son sürümü C#, Visual Basic, F#, WiX, C++ ve Q# sürümlerini destekler.
NuGet hangi proje şablonlarını destekler?
NuGet, Windows, Web, Bulut, SharePoint, Wix gibi çeşitli proje şablonları için tam desteğe sahiptir.
Visual Studio şablonlarının parçası olan paketleri Nasıl yaparım? güncelleştirin?
Paket Yöneticisi kullanıcı arabiriminde Güncelleştirmeler sekmesine gidin ve Tümünü Güncelleştir'i seçin veya Paket Yöneticisi Konsolu'ndaki komutu kullanınUpdate-Package
.
Şablonun kendisini güncelleştirmek için şablon deposunu el ile güncelleştirmeniz gerekir. Bu konuda Xavier Decoster'ın bloguna bakın. El ile yapılan güncelleştirmeler, tüm bağımlılıkların en son sürümü birbiriyle uyumlu değilse şablonu bozabileceğinden, bunun kendi riski altında yapıldığını unutmayın.
NuGet'i Visual Studio dışında kullanabilir miyim?
NuGet komut satırı
NuGet komut satırı aracının en son sürümünü edinmek Nasıl yaparım??
nuget.exe lisansı nedir?
MIT lisansının koşulları altında nuget.exe yeniden dağıtmanıza izin verilir. Yeniden dağıtmayı seçtiğiniz nuget.exe kopyalarını güncelleştirmek ve hizmet vermek sizin sorumluluğundadır.
NuGet komut satırı aracını genişletmek mümkün mü?
Evet, Rob Reynold'un Archive.org aracılığıyla sunulan gönderisinde açıklandığı gibi öğesine özel komutlar nuget.exe
eklemek mümkündür.
NuGet Paket Yöneticisi Konsolu (Windows'da Visual Studio)
Paket Yöneticisi konsolunda DTE nesnesine erişim Nasıl yaparım??
Visual Studio otomasyon nesne modelindeki en üst düzey nesneye DTE (Geliştirme Araçları Ortamı) nesnesi adı verilir. Konsol bunu adlı $DTE
bir değişken aracılığıyla sağlar. Daha fazla bilgi için Visual Studio Genişletilebilirlik belgelerindeki Otomasyon Modeline Genel Bakış bölümüne bakın.
$DTE değişkenini DTE2 türüne dönüştürmeye çalışıyorum, ancak bir hata alıyorum: "EnvDTE.DTEClass" türündeki "EnvDTE.DTEClass" değeri "EnvDTE80.DTE2" türüne dönüştürülemiyor. Ne oldu?
Bu, PowerShell'in bir COM nesnesiyle nasıl etkileşime geçtiğini gösteren bilinen bir sorundur. Aşağıdaki işlemi deneyin:
`$dte2 = Get-Interface $dte ([EnvDTE80.DTE2])`
Get-Interface
NuGet PowerShell konağı tarafından eklenen bir yardımcı işlevdir.
Paketleri oluşturma ve yayımlama
Paketimi akışta Nasıl yaparım? listeleyin?
Bkz. Paket oluşturma ve yayımlama.
Kitaplığımın .NET Framework'ün farklı sürümlerini hedefleyen birden çok sürümüm var. Bunu destekleyen tek bir paket Nasıl yaparım??
Bkz . Birden Çok .NET Framework Sürümünü ve Profilini Destekleme.
Kendi depomu veya akışımı Nasıl yaparım? ayarladım?
Bkz. Barındırma paketlerine genel bakış.
NuGet akışıma toplu olarak paketleri nasıl yükleyebilirim?
Bkz. NuGet paketlerini toplu yayımlama (jeffhandly.com).
Paketlerle çalışma
NuGet paketlerini İnternet bağlantısı olmadan yüklemek mümkün mü?
Evet, Scott Hanselman'ın Blog gönderisine bakın nuget.org indiğinde (veya uçaktayken) NuGet'e erişme (hanselman.com).
Paketleri varsayılan paketler klasöründen farklı bir konuma yüklemek Nasıl yaparım??
repositoryPath
ayarını Nuget.Config
kullanarak nuget config -set repositoryPath=<path>
ayarlayın.
NuGet paketleri klasörünü kaynak denetimine eklemekten Nasıl yaparım? kaçının?
in Nuget.Config
değerini disableSourceControlIntegration
olarak true
ayarlayın. Bu anahtar çözüm düzeyinde çalışır ve bu nedenle dosyaya $(Solutiondir)\.nuget\Nuget.Config
eklenmesi gerekir. Visual Studio'dan paket geri yükleme etkinleştirildiğinde bu dosya otomatik olarak oluşturulur.
Paket geri yükleme Nasıl yaparım? kapatılır mı?
Bkz . Paket geri yüklemesini etkinleştirme ve devre dışı bırakma.
Uzak bağımlılıklara sahip bir yerel paket yüklerken neden "Bağımlılık hatası çözümlenemiyor" hatası alıyorum?
Projeye yerel bir paket yüklerken Tüm kaynak'ı seçmeniz gerekir. Bu, tek bir akış kullanmak yerine tüm akışları toplar. Bu hatanın görünmesinin nedeni, yerel bir depo kullanıcılarının genellikle şirket ilkeleri nedeniyle yanlışlıkla uzak paket yüklemekten kaçınmak istemeleridir.
Aynı klasörde birden çok projem var, her proje için ayrı packages.config dosyalarını nasıl kullanabilirim?
Ayrı projelerin ayrı klasörlerde yaşadığı çoğu projede, NuGet her projedeki dosyaları tanımladığından packages.config
bu bir sorun değildir. NuGet 3.3+ ve aynı klasördeki birden çok projeyle, dosya adlarına projenin packages.config
adını ekleyebilirsiniz, deseni packages.{project-name}.config
kullanın ve NuGet bu dosyayı kullanır.
Her proje dosyası kendi bağımlılık listesini içerdiğinden PackageReference kullanılırken bu bir sorun değildir.
Depo listemde nuget.org göremiyorum, nasıl geri alabilirim?
- Kaynak listenize ekleyin
https://api.nuget.org/v3/index.json
veya - (Windows) veya
~/.nuget/NuGet/NuGet.Config
(Mac/Linux) öğesini silin%appdata%\.nuget\NuGet.Config
ve NuGet'in yeniden oluşturmasına izin verin.
PackageReference'a geçiş yaptım, derlemem neden 'Bu proje bu bilgisayarda eksik olan NuGet paketlerine başvurur'?
packages.config projelerinde, props veya hedefleri olan build
bir paket yüklendiğinde NuGet, msbuild paketlerinin içeriğinin derlenmeden önce içeri aktarıldığını doğrulamak için bir EnsureNuGetPackageBuildImports
hedef ekler.
target
el ile değiştirildiyse, NuGet geçiş sırasında kaldırılması gerektiğini algılayamayabilir.
Projeniz ise PackageReference
ve proje dosyasında hala bu hedefe sahipseniz, kaldırmanız güvenli olmalıdır.