2015-08-07 8 views
9

Gulp görevlerini yalnızca bir ASP.NET 5 web uygulaması yayınlarken çalıştırmanın en iyi yolu ne olurdu? Bir Gulp komutunu yürüten add a custom build event'a ihtiyacım var mı?Yalnızca ASP.NET 5 web uygulaması yayınlanırken, Gülp görev (ler) ini yürütme

cmd.exe /c gulp -b "C:\Projects\ProjectName\Source\ProjectName.Web" --gulpfile "C:\Projects\ProjectName\Source\ProjectName.Web\Gulpfile.js" publish 

Veya, tercihen Görev Runner Explorer aracılığıyla BeforePublish hedefe bir Gulp görevi bağlamak için bir yol var?

Herhangi bir öneri çok takdir edilecektir.

cevap

4

UPDATE 2 .NET Core CLI artık "ön paketi" desteklemiyor. Bir "postcompile" betiği daha iyi çalışabilir.

https://docs.microsoft.com/en-us/dotnet/articles/core/tools/project-json#scripts

Orijinal Cevap

Ben yayınlamadan önce çalıştırmak istiyorsa, project.json

project.json: Scripts documentation

{ 
... 
    "scripts": { 
    "prepack": "gulp publish", 
    } 
... 
} 
+0

sizin "komut" yazan kısmı ediyorum ekle ben 'prepack' eylemine kanca mı? –

+1

Aslında, yayınlanacak VS aracını kullanıyorsanız, "prebuild" hedefi daha iyi olabilir. – natemcmaster

+0

yayınlamadan önce yayınlamak istiyorsanız, 'prepublish' kullanmanın eylem olduğunu düşünüyorum ... – Pawel

8

Yayınlama profil dosyanızdaki hedefi oluşturun (* .pubxml dosyası hala asp.net 5 projelerinde var). Pubxml dosyası bir derleme dosyasıdır ve proje oluşturma dosyanıza eklenir. Bu şekilde yalnızca o belirli profili kullanarak yayınladığınızda çalıştırılabilir.

<Target Name="BeforeBuild"> 
    <Exec Command="call gulp" WorkingDirectory="$(ProjectDir)" /> 
</Target> 
:
ben (bütün paketler vb görünümlerde, js/css tüm enjeksiyon geri inşa başlayacaktı önce ben onları yapacağını) daha genel olabilir ve orada yudum komutu eklemek için BeforeBuild hedefini kullanırsınız

Bu, Visual Studio'dan veya MSBuild ile derleme makinenizden yayımlanırsa çalışır.

İlgili konular