ग्रंट कैसे स्थापित करें और इसके साथ स्क्रिप्ट कैसे बनाएं


86

नमस्ते मैं विंडोज 7 64 बिट पर ग्रंट स्थापित करने की कोशिश कर रहा हूं। मैंने कमांड का उपयोग करके ग्रंट स्थापित किया है

 npm install -g grunt
 npm install -g grunt-cli

लेकिन अब अगर मैं करने की कोशिश करता हूं grunt init, तो यह मुझे एक त्रुटि दे रहा है -

एक वैध ग्रन्टफ़ाइल नहीं मिला। कृपया ग्रन्ट को कॉन्फ़िगर करने के तरीके के बारे में अधिक जानकारी के लिए आरंभ किया गया मार्गदर्शिका देखें: http://gruntjs.com/getting-started घातक त्रुटि: ग्रंटफाइल खोजने में असमर्थ।

लेकिन जब मैं अपने सिस्टम पर ग्रंट फ़ोल्डर के अंदर देखता हूं तो Gruntfile.jsवह वहां होता है। क्या कोई मुझे यह बता सकता है कि इस ग्रंट को ठीक से कैसे स्थापित किया जाए और ग्रंट का उपयोग करके निर्मित स्क्रिप्ट कैसे लिखी जाए। मेरे पास एक HTML पेज और जावा स्क्रिप्ट है अगर मैं चाहता हूं कि ग्रंट का उपयोग करके एक स्क्रिप्ट बनाई जाए तो मैं यह कैसे कर सकता हूं?


1
npm install -g gruntविश्व स्तर पर ग्रंट स्थापित करने का मतलब है जो अब अनुशंसित नहीं है (ग्रंट 0.4 ​​के साथ शुरू)।
लूडर

जवाबों:


229

GruntJS सेटअप करने के लिए यहाँ कदम है:

  1. सुनिश्चित करें कि आपके पास अपना package.jsonसेटअप या सेटअप नया है:

    npm init
    
  2. वैश्विक के रूप में ग्रन्ट सीएलआई स्थापित करें:

    npm install -g grunt-cli
    
  3. अपने स्थानीय प्रोजेक्ट में ग्रन्ट स्थापित करें:

    npm install grunt --save-dev
    
  4. अपने निर्माण की प्रक्रिया में किसी भी ग्रन्ट मॉड्यूल को स्थापित करें। इस नमूने के लिए मैं फ़ाइलों को एक साथ संयोजित करने के लिए कॉनैट मॉड्यूल जोड़ूंगा:

    npm install grunt-contrib-concat --save-dev
    
  5. अब आपको अपना सेटअप करने की आवश्यकता है Gruntfile.jsजो आपकी निर्माण प्रक्रिया का वर्णन करेगा। इस नमूने के लिए मैं सिर्फ दो जेएस फाइलें file1.jsऔर फ़ोल्डर file2.jsमें संयोजन करता हूं jsऔर उत्पन्न करता हूं app.js:

    module.exports = function(grunt) {
    
        // Project configuration.
        grunt.initConfig({
            concat: {
                "options": { "separator": ";" },
                "build": {
                    "src": ["js/file1.js", "js/file2.js"],
                    "dest": "js/app.js"
                }
            }
        });
    
        // Load required modules
        grunt.loadNpmTasks('grunt-contrib-concat');
    
        // Task definitions
        grunt.registerTask('default', ['concat']);
    };
    
  6. अब आप आदेश का पालन करके अपनी निर्माण प्रक्रिया चलाने के लिए तैयार होंगे:

    grunt
    

मुझे उम्मीद है कि यह आपको एक विचार दे सकता है कि ग्रंटजस बिल्ड के साथ कैसे काम किया जाए।

ध्यान दें:

आप उपयोग कर सकते हैं grunt-initबनाने के लिए Gruntfile.jsअगर आप कच्चे चरण 5 के लिए कोडिंग के बजाय जादूगर आधारित रचना चाहते हैं।

ऐसा करने के लिए, कृपया इन चरणों का पालन करें:

npm install -g grunt-init
git clone https://github.com/gruntjs/grunt-init-gruntfile.git ~/.grunt-init/gruntfile
grunt-init gruntfile

विंडोज उपयोगकर्ताओं के लिए: यदि आप cmd.exe का उपयोग कर रहे हैं तो आपको बदलने की आवश्यकता ~/.grunt-init/gruntfileहै %USERPROFILE%\.grunt-init\। PowerShell ~सही रूप से पहचान लेगा ।


कि मैं क्या देख रहा हूँ, धन्यवाद। भी, क्या यह आवश्यक है कि gruntfile.js को प्रोजेक्ट रूट फ़ोल्डर में रखा जाए (यह विंडोज़ पर अन्यथा काम करने के लिए नहीं मिल सकता है)?
चेस्टर89

1
चरण 5 मूल रूप से सेटअप का उपयोग कर सकता है grunt init:gruntfile? मैं यह कर की कोशिश की है लेकिन मैं हमेशा कोई त्रुटि मिलती है: Fatal error: Unable to find Gruntfile। क्या Gruntfile.js का निर्माण हमेशा एक मैनुअल प्रक्रिया है? यदि ऐसा है, तो मुझे येओमान का उपयोग करने का एक लाभ दिखाई देता है जहां एक ग्रंटफाइल.जेएस ऑटो-जेनरेट किया गया है (और यह अभी भी उन परियोजनाओं के लिए लागू होता है जो मैं पैदा करूंगा जो वास्तव में वेबएप नहीं हैं।
मीका

@ निकाह, आप आसानी से ग्रंटफाइल बनाने के लिए ग्रंट-इनिट टूल का उपयोग कर सकते हैं। मैं मुख्य पोस्ट को अपडेट करूंगा और इसे नोट के रूप में जोड़ूंगा।
Qorbani

@qorbani फिर मैं उलझन में हूँ। इस गैर-ग्रंट परियोजना के लिए एक निर्देशिका में, मैंने पहले ही चरण 1-4 का पालन किया है। अब मैं बस दौड़ा npm install -g grunt-initऔर यह सफलतापूर्वक स्थापित हुआ। मैंने इसके साथ पालन किया grunt init:gruntfileऔर यह अभी भी मुझे वही घातक त्रुटि देता है। मैं क्या खो रहा हूँ?
मीका

ग्रंट इनिट: ग्रंटफाइल सही नहीं है। टेम्पलेट-आधारित मचान के लिए ग्रंट-इन अलग हेल्पर है और आपको ग्रंटफाइल टेम्पलेट को स्थापित करने की आवश्यकता है जो कि ग्रंटफाइल.जेएस उत्पन्न करने में सक्षम है
कोरबनी

8

कुछ समय हमें WINDOWS के लिए PATH वैरिएबल सेट करना होगा

% USERPROFILE% \ AppData \ रोमिंग \ NPM

उसके बाद टेस्ट के साथ where grunt

नोट: कमांड प्रॉम्प्ट विंडो को बंद करने और इसे फिर से खोलने के लिए मत भूलना।


5

मुझे एक ही मुद्दा मिला है, लेकिन मैंने इसे अपने Grunt.js को Gruntfile.js में बदलने के साथ हल किया है। windows cmd पर grunt.cmd टाइप करने से पहले अपनी फ़ाइल का नाम जांचें (यदि आप विंडोज़ का उपयोग कर रहे हैं)।


2

आपको प्रोजेक्ट की निर्भरता पर ग्रन्ट-क्ली स्थापित करना चाहिए और फिर इसे अपने पैकेज में स्क्रिप्ट के माध्यम से चलाना चाहिए। इस तरह से परियोजना पर काम करने वाले अन्य डेवलपर्स सभी समान रूप से ग्रंट का उपयोग करेंगे और उन्हें सेटअप के हिस्से के रूप में वैश्विक रूप से स्थापित नहीं करना होगा।

npm i -D grunt-cliइसके साथ विश्व स्तर पर स्थापित करने के बजाय ग्रन्ट-क्ली स्थापित करें -g

//package.json

...

"scripts": {
  "build": "grunt"
}

फिर npm run buildग्रंट को बंद करने के लिए उपयोग करें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.