2013-02-14 16 views
29

Grunt'ın hangi grunt.js dosyasını kullanacağını söylemenin bir yolu var mı? Kök projemden farklı bir klasörden nasıl grunt çalıştırırım

Ben grunt.cmd, node.exe,..., GruntFile.js ile benim gerçek web uygulaması ve içeren bir f:\a\b\tools klasörü olan tüm a\c\my_app gelen hırıltı Running f:\a\c\my_app

bir yapar ki ince ama başka klasörden hırıltı çalıştırmak için çalışıyor çalışır yerel node_modules olduğunu işe yaramaz. Ben homurdanmak için yeni ve açık bir şey eksik olabilir.

f:\a>grunt --config c\GruntFile.js 

grunt-cli: The grunt command line interface. (v0.1.6)

Fatal error: Unable to find local grunt.

If you're seeing this message, either a Gruntfile wasn't found or grunt hasn't been installed locally to your project. For more information about installing and configuring grunt, please see the Getting Started guide:

http://gruntjs.com/getting-started

cevap

54

Sen iki parametre --base ve --gruntfile

ayarlayabilirsiniz grunt --help itibaren

:

--base alternatif taban yolunu belirtin. Varsayılan olarak, tüm dosya yolları Gruntfile öğesine göredir. (grunt.file.setBase) *

--gruntfile Alternatif bir Gruntfile belirtin. Varsayılan olarak, grunt en yakın Gruntfile.js veya Gruntfile.coffee dosyası için geçerli veya üst dizinlere bakar.

Yani, yürütebilirsiniz:

grunt --base c\my_app --gruntfile c\my_app\GruntFile.js mytask 
+5

FWIW, '--base' kullanarak benim için işe yaramadı ama' --gruntfile' kullanarak yaptı. –

+1

Bu nasıl 'varsayılan' olarak ayarlanabilir? Tüm uygulamalarımızda kullanabileceğimiz bir Generic Grunt dosyası var, bu yüzden bir klasörde (submodule) olmasını istiyoruz ama yine de sadece her seferinde --gruntfile yazmak yerine her şeyi koşturmakla uğraşmak istiyoruz. – WORMSS

+0

Bu, izleme dosyasıyla çalışmıyor gibi görünüyor. İlk çalıştırma tamam, fakat bir saat bir koşuyu tetiklediğinde yol iki katına çıkar ve hatalar çıkar: "gruntfile bulamıyor" c \ my_app \ c \ my_app \ gruntfile.js "' – NDM

0

Ben modülleri vb nodes_modules, içine yüklenir çünkü uygulama dizinine taşımak ve hırıltı çalıştırmalısınız uygulamanızın dizinden çalıştırmak için tavsiye edeceğiz:

cd f: 
cd a\c\my_app 
grunt {yourTasks} 
+0

bunun kurtulabilirsiniz '--base' parametresini belirterek. @ Renan'ın cevabı. –

İlgili konular