2014-07-02 22 views
10

Windows PowerShell'den .NET vNext'te bir konsol uygulaması oluşturmaya çalışıyorum. Şimdiye kadar Windows Powershell'den vNext uygulaması nasıl oluşturulur?

kvm yükseltme

tarafından paketi yükseltilmiş

Ben paket sürümü "KRE-x86.1.0.0-alpha3-10070 svr50" ve aynı zamanda "takma" muayene oldu hangi

versiyona uymak. Windows Poweshell bu çalıştırmayı denediğinizde dışarı listeler

{ 
    "dependencies": { 
    "System.Console": "4.0.0.0" 
    }, 
    "configurations": { 
    "net45": {}, 
    "k10": {} 
    } 
} 

Ve şimdi

using System; 

public class Program 
{ 
    public static void Main() 
    { 
     Console.WriteLine("Why Soo serious!!!! "); 
    } 
} 

ve project.json feryat:

Şimdi, bir konsol uygulaması aşağıdaki satırları içeren yazdı eksik dll (özellikle ad alanı Sistemi) yapı çıkışını körükler:
(her ikisi de aynı klasörde json ve cs dosyaları json ile ilgili hiçbir hata)

kpm inşa

(1,12): hata CS0246: tür veya ad alanı adı 'Sistem' bulunmadı (bir kullanarak yönergesi veya bir derleme başvurusu eksik?)

Nasıl kütüphaneye başvur. Lütfen nerede (hangilerinin) eksik olduğunu ve nasıl düzeltileceğini bulmanıza yardım edin ...

cevap

12

Sorununuz nuget konfigürasyonu ile ilgilidir. Çalışma şeklini görmek için project.json klasörüne gidin ve bir "kpm geri yükleme" yapın. Göreceğiniz:

bulunamıyor System.Console> = 4.0.0.0

kpm yani farklı bir külçe depo kullandığı için bu happends: depo hiçbir Nuget paketi var, diyeceksin https://www.myget.org/F/aspnetvnext/

System.Console

Bunu çözmek için, standart nuget deposu (System.Console paketini almak için) ve th değerini belirteceğiniz project.json klasörünün hemen dışında bir NuGet.Config dosyasına ihtiyacınız vardır. asp.net vnext özel depolarını alabilmeniz için e asp.net vnext deposu.

dosyası bu gibi görünmelidir Yani: örneklenen gibi klasör yapısını oluşturduktan sonra

/ - root folder 
- NuGet.config 
- your project folder 
-- project.json 
-- source code files 

ve NuGet.config koyun:

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <packageSources> 
    <add key="AspNetVNext" value="https://www.myget.org/F/aspnetvnext/" /> 
    <add key="NuGet.org" value="https://nuget.org/api/v2/" /> 
    </packageSources> 
    <packageSourceCredentials> 
    <AspNetVNext> 
     <add key="Username" value="aspnetreadonly" /> 
     <add key="ClearTextPassword" value="4d8a2d9c-7b80-4162-9978-47e918c9658c" /> 
    </AspNetVNext> 
    </packageSourceCredentials> 
</configuration> 

Ayrıca klasör yapısı dikkat Doğru yerde "kpm geri yükleme" yaparsınız ve System.Console çözümlenir ve sonra "kpm kurmak" veren tüm doğru düzgün yapılandığını göreceksiniz

+0

Ben eksik Nuget.config bir seviye daha yüksek bit olmalıdır. Bunu tahmin etmeliydim ... – jeffa00

+1

Mükemmel cevap - bu nasıl başka bir yerde belgelenmez ??? –

+0

Ben tam olarak aynı sorunu yaşadım, ve bu çözüm bana hiç yardımcı olmadı - Ben hala '' kpm geri yükleme ' –

7

Hala havi iseniz Bu sorunu ve 10.10'un altındaydım, projenizi değiştirmeyi deneyin.Buna json dosyası:

"dependencies": { 
    "System.Console": "4.0.0-beta-22210" 
}, 

(System.Console değiştirilir güncellenecektir zorunda kalacak, ama en azından bugün derlemek mümkün olacak sakıncası,).

+4

ayarlayarak 'System.Console> = 4.0.0.0' hata mesajı bulunamıyor ** 3.9.9.9 ** da işe yarayabilir. En azından bunu yaparsanız, yayınlandıkça güncellemeler alırsınız. Her ne sebeple olursa olsun, 4.0.0-beta-22210 <4.0.0.0 ila kpm. – mrBallistic

+1

"ubuntu 14.04" –

+0

için çalıştım Sadece yeoman aspnet konsol uygulama şablonunu kullandım ve oluşturulan project.json, aşağıdaki bağımlılığı "System.Console": "4.0.0-beta - *" 'yi belirtir. Bu, yapı numaraları ilerledikçe daha iyi bir seçenek olabilir. – Lou

İlgili konular