Показать сообщение отдельно
  #1 (permalink)  
Старый 15.06.2016, 22:58
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Gruntfile.js в произвольной директории
начато здесь

Задача:
на примере склейки двух файлов заюзать grunt под виндой портативно с относительно произвольным расположением файла Gruntfile.js

вариант структуры каталогов:
test_project
- dist
--  test.js появится здесь
- src
--  test1.js
--  test2.js
- сtr
--  grunt
---      env
----        nodejs
-----          node_modules
-----          node.exe
-----          npm.cmd
---      node_modules
----        .bin
-----          grunt.cmd
----        grunt
----        grunt-cli
----        grunt-contrib-concat
---      Gruntfile.js
---      package.json


package.json:
{
  "name": "test_project",
  "version": "0.1.0",
  "devDependencies": {
    "grunt": "^1.0.1",
    "grunt-cli": "^1.2.0",
    "grunt-contrib-concat": "^1.0.1"
  }
}


Grunfile.js:
module.exports = function (grunt) {
	grunt.initConfig({
		concat: {
			test_target: {
			//пути отсчитываем от расположения Gruntfile.js
			  src: ['../../src/test1.js', '../../src/test2.js'],
			  dest: '../../dist/test.js',
			},
		},
	});
	grunt.loadNpmTasks("grunt-contrib-concat");
	grunt.registerTask("default", ["concat"]);
};


вариант решения:
- каталог с node.exe в path
test_project\ctr\grunt>set path=%cd%;%path%

- в Grunfile.js пути отсчитываем от его расположения

- чтобы запускать grunt.cmd не только из каталога .bin, добавляем путь к нему в path
test_project\ctr\grunt\node_modules\.bin>set path=%cd%;%path%


итого:
test_project\ctr\grunt>grunt
Ответить с цитированием