2014-03-13 61 views
6

從git構建yeoman項目結算時遇到問題。我試圖採取yeoman項目的git結賬並運行grunt serve。以下是這種情況下,隨後的錯誤描述從git checkout構建yeoman項目

場景描述:

PERSON1創建使用喲角自耕農angularjs項目。 grunt serve正在工作正常Person1的電腦。 Person1將代碼推送到git,以便其他團隊成員可以使用它。當PERSON2取的git(GIT中克隆< URL>)的結帳發生

問題。該咕嚕在檢出的副本服務命令會給出以下錯誤:

$ grunt serve 
grunt-cli: The grunt command line interface. (v0.1.13) 

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 

我想:npm install grunt

我得到了以下錯誤:

grunt serve 
Loading "Gruntfile.js" tasks...ERROR 
>> Error: Cannot find module 'load-grunt-tasks' 
Warning: Task "serve" not found. Use --force to continue. 

Aborted due to warnings. 

使用的工具:

$ grunt -version 
grunt-cli v0.1.13 
grunt v0.4.4 
$ yo -v 
1.1.2 
[email protected]:testing$ npm -version 
1.4.4 

ls -l on the di本館

drwxrwxr-x app 
-rw-rw-r-- bower.json 
-rw-rw-r-- Gruntfile.js 
-rw-rw-r-- karma.conf.js 
-rw-rw-r-- karma-e2e.conf.js 
drwxrwxr-x node_modules 
-rw-rw-r-- package.json 
drwxrwxr-x test 

我需要幫助完成從git checkout構建項目的任務,以便我可以繼續開發。

回答

9

在App-Directory中執行一個簡單的npm install

問題是: Yeoman-Projcet有很多npm依賴關係,不僅本身是grunt,而且還有所有grunts任務和生成器。但是,當然你不希望你的倉庫中的所有軟件包。這就是「package.json」文件:它列出項目依賴的所有包。 npm install讀取package.json並自行安裝所有需要的軟件包。

要正確運行應用程序,您還需要執行bower install。 Bower用於前端程序包npm用於節點。 「bower install」在「bower.json」中查找相關軟件包 - 文件並安裝它們。

+0

感謝Charminbaer解釋命令。它有助於理解yeoman如何管理依賴關係。 :) –

+0

歡迎你,很高興我能幫忙! :) – Charminbear

6

分2步解決。在下面的命令:

  1. NPM安裝
  2. 涼亭安裝

現在運行咕嚕服務

$ grunt serve 
Running "serve" task 

Running "clean:server" (clean) task 

Running "bower-install:app" (bower-install) task 

Running "concurrent:server" (concurrent) task 

    Running "compass:server" (compass) task 
    directory .tmp/styles/ 
     create .tmp/styles/main.css (8.454s) 
    Compilation took 8.455s 

    Done, without errors. 


    Execution Time (2014-03-13 10:53:01 UTC) 
    compass:server 9.1s ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 100% 
    Total 9.1s 

Running "autoprefixer:dist" (autoprefixer) task 
Prefixed file ".tmp/styles/main.css" created. 

Running "connect:livereload" (connect) task 
Started connect web server on 127.0.0.1:9000. 

Running "watch" task 
Waiting... 

這解決了問題。

讓我知道如果這可以避免或以更好的方式完成:)