2015-05-21 23 views
6

Chocolatey paketi oluşturmaya çalışıyorum. Başlangıçta herhangi bir bağımlılığı olmayan bir sürüm oluşturdum ve basitçe bir exe dosyasını araçlar/bin dizinine koydum ve basit bir nuspec dosyası yaptım ve bu doğru bir şekilde exe dosyasını yola koymam gerekiyordu. Bu iç araç. Bununla birlikte, proje artık bir dış bağımlılığa bağlı olacak şekilde yeniden yapılandırılmıştır. Bağımlılık, ana proje ile aynı depoda bulunan bir nuget paketidir. Bağımlılığı eklemek için onu bağımlılıklar bölümüne ekledim. Visual Studio'daki projenin kendisi de aynı şekilde değişmektedir. İşte benim nuspec dosyasıdır: (ı rm damgasını bazı verileri kaldırıldı, ama bunu etkilememelidir kalan her şey aynıdır.) Bunu yüklemeye çalıştığınızda"Projeleri hedefleyen" bir pakete bağlı bir paketi nasıl oluşturabilirim?

Ancak
<?xml version="1.0" encoding="UTF-8"?> 
<!-- Do not remove this test for UTF-8: if “Ω” doesnt appear as greek uppercase omega letter enclosed in quotation marks, you should use an editor that supports UTF-8, not this one. --> 
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd"> 
    <metadata> 
     <!-- Read this before publishing packages to chocolatey.org: https://github.com/chocolatey/chocolatey/wiki/CreatePackages --> 
     <id>lisp-translator</id> 
     <title>lisp-translator (Install)</title> 
     <version>0.1.0</version> 
     <authors>rm</authors> 
     <owners>rm</owners> 
     <summary>rm</summary> 
     <description>rm</description> 
     <projectUrl>rm</projectUrl> 
     <tags>lisp-translator admin</tags> 
     <copyright /> 
     <licenseUrl>rm</licenseUrl> 
     <requireLicenseAcceptance>false</requireLicenseAcceptance> 
     <!--<iconUrl>http://cdn.rawgit.com/__REPLACE_YOUR_REPO__/master/icons/lisp-translator.png</iconUrl>--> 
     <dependencies> 
     <dependency id="LispParsingLibrary" version="1.1.0.17190" /> 
     </dependencies> 
     <releaseNotes /> 
    </metadata> 
</package> 

, ben oldukça ezoterik olsun hata:

lisp-translator not installed. An error occurred during installation: 
External packages cannot depend on packages that target projects. 
The install of lisp-translator was NOT successful. 
lisp-translator not installed. An error occurred during installation: 
External packages cannot depend on packages that target projects. 

Chocolatey installed 0/1 package(s). 1 package(s) failed. 
See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log). 
Failures: 
- lisp-translator 

Bu bağımlılık ekleme konusunda yanlış yapıyorum?

cevap

1

Bu gerçekten eski, aptal bir nuget ambalajı sorunudur. LispParsingLibrary paketinde "içerik" adı verilen bir klasör var. Bunun anlamı, paketinizin bir içerik klasörüne de ihtiyacı olacaktır.

Bunu hiç önermiyoruz. Lütfen bu klasörü kaldırmak ya da dosya üzerine yüklemek ve kopyalamak için LispParsingLibrary'nin bakıcısına danışın.

Biz bu izlemek için açılmış bir sorunu vardı, ama ben İlgili bir soru https://github.com/chocolatey/choco/issues/290

+0

eklendi http://stackoverflow.com/questions/24710818/external-packages-cannot-depend-on-packages- bu hedef-projeler-kısmi başarısızlık – ferventcoder

+0

LispParsingLibrary bir içerik klasörüne sahip görünmüyor. Örneğin, NuGet Package Explorer'da açmak, sadece dll ve content klasörüne sahip bir lib/net45 klasörünü gösterir. – Jake

+0

@Jake Bu LispParsingLibrary paketini nerede bulabilirim? Nuget veya Chocolatey'de göremiyorum. – ferventcoder