Сборка йоменского проекта из git checkout
Столкнулся с проблемой в создании кассы йоменского проекта из GIT. Пытаюсь взять git checkout из проекта yeoman и запустить grunt serve. Ниже приведен сценарий с описанием ошибки
Описание сценария:
Person1 создал проект yeoman angularjs, используя yo angular. grunt serve отлично работает на компьютере Person1. Person1 отправляет код в git, чтобы другие члены команды могли работать над ним.
Проблема возникает, когда Person2 выполняет проверку git (git clone
$ 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
suraj@localhost:testing$ npm -version
1.4.4
ls -l в каталоге
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, чтобы я мог продолжить разработку.
2 ответа
Выполнить простую npm install
внутри каталога приложений.
Проблема в том, что Yeoman-Projcet имеет множество npm-зависимостей, не только хрюкающих, но и все задачи и генераторы. Но, конечно, вы не захотите, чтобы все эти пакеты были в вашем хранилище. Это был файл "package.json": он перечисляет все пакеты, от которых зависит проект. npm install
читает package.json и самостоятельно устанавливает все необходимые пакеты.
Чтобы правильно запустить приложение, вам также необходимо выполнить bower install
, Бауэр для Frontend-Packages, что npm для узла. "bower install" ищет зависимые пакеты в файле "bower.json" и устанавливает их.
Решено в 2 этапа. Следующие команды:
- установка npm
- установка беседки
Теперь беги крякать служить
$ 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...
Это решает проблему.
Дайте мне знать, если этого можно избежать или сделать лучше:)