2016-08-05 4 views
3

Я запускаю Grunt и не могу получить docker (jsdocs), чтобы поместить его сгенерированные файлы во внешнюю папку. Независимо от того, что «dest» я передаю, он по-прежнему помещает сгенерированные html-файлы в тот же каталог, что и файлы javascript.Путь к файлу Grunt/Docker

Grunt строят -v журналы:

Running "docker:build" (docker) task 
Verifying property docker.build exists in config...OK 
Files: C:/mysite/src/html/scripts/components/app-helpers.js -> jsdocs/app-helpers.js 
Files: C:/mysite/src/html/scripts/components/datatables-functions.js -> jsdocs/datatables-functions.js 
Files: C:/mysite/src/html/scripts/components/highcharts-functions.js -> jsdocs/highcharts-functions.js 
Files: C:/mysite/src/html/scripts/components/pagination.js -> jsdocs/pagination.js 
Files: C:/mysite/src/html/scripts/components/resizer.js -> jsdocs/resizer.js 
Files: C:/mysite/src/html/scripts/components/slideout.js -> jsdocs/slideout.js 
Files: C:/mysite/src/html/scripts/components/tabs.js -> jsdocs/tabs.js 
Files: C:/mysite/src/html/scripts/components/ui.js -> jsdocs/ui.js 
Files: C:/mysite/src/html/scripts/components/widget.js -> jsdocs/widget.js 
Files: C:/mysite/src/html/scripts/components/widgets/cards.js -> jsdocs/cards.js 
Files: C:/mysite/src/html/scripts/components/widgets/figures.js -> jsdocs/figures.js 
Files: C:/mysite/src/html/scripts/components/widgets/flip-card.js -> jsdocs/flip-card.js 
Files: C:/mysite/src/html/scripts/components/widgets/list-view.js -> jsdocs/list-view.js 
Files: C:/mysite/src/html/scripts/components/widgets/projects.js -> jsdocs/projects.js 
Options: onlyUpdated=false, colourScheme="default", ignoreHidden=false, sidebarState, exclude=false, lineNums=false, js=[], css=[], extras=[] 
Options: onlyUpdated=false, colourScheme="default", ignoreHidden=false, sidebarState, exclude=false, lineNums=false, js=[], css=[], extras=[] 
Destination: jsdocs/app-helpers.js 
Destination: jsdocs/datatables-functions.js 
Destination: jsdocs/highcharts-functions.js 
Destination: jsdocs/pagination.js 
Destination: jsdocs/resizer.js 
Destination: jsdocs/slideout.js 
Destination: jsdocs/tabs.js 
Destination: jsdocs/ui.js 
Destination: jsdocs/widget.js 
Destination: jsdocs/cards.js 
Destination: jsdocs/figures.js 
Destination: jsdocs/flip-card.js 
Destination: jsdocs/list-view.js 
Destination: jsdocs/projects.js 
Generated: C:\mysite\src\html\scripts\components\app-helpers.js.html 
Generated: C:\mysite\src\html\scripts\components\datatables-functions.js.html 
Generated: C:\mysite\src\html\scripts\components\highcharts-functions.js.html 
Generated: C:\mysite\src\html\scripts\components\pagination.js.html 
Generated: C:\mysite\src\html\scripts\components\resizer.js.html 
Generated: C:\mysite\src\html\scripts\components\slideout.js.html 
Generated: C:\mysite\src\html\scripts\components\tabs.js.html 
Generated: C:\mysite\src\html\scripts\components\ui.js.html 
Generated: C:\mysite\src\html\scripts\components\widget.js.html 
Generated: C:\mysite\src\html\scripts\components\widgets\cards.js.html 
Generated: C:\mysite\src\html\scripts\components\widgets\figures.js.html 
Generated: C:\mysite\src\html\scripts\components\widgets\flip-card.js.html 
Generated: C:\mysite\src\html\scripts\components\widgets\list-view.js.html 
Generated: C:\mysite\src\html\scripts\components\widgets\projects.js.html 
Saved file tree to doc-filelist.js 
Copied JS to doc-script.js 
Copied default.css to doc-style.css 
Done. 

Мой конфиг

docker: { 
      build: { 
       expand: true, 
       flatten: true, 
       cwd: String(global_scripts_folder).replace(/\\\\/g, "/").replace(/\\/g, "/"), 
       src: ['components/**/*.js'], 
       dest: 'jsdocs', 
       options: { 
        //template : "node_modules/ink-docstrap/cosmo", 
        //configure : "node_modules/ink-docstrap/template/jsdoc.conf.json" 
       } 
      } 
     }, 
+0

Вы находитесь на машине для окон. Поэтому я не уверен в этой строке 'cwd: String (global_scripts_folder) .replace (/ \\\\/g," /").replace(/\\/g, "/") '. В отличие от Linux, я думаю, что путь к каталогу Windows основан на '\' косой чертой. Попробуйте прокомментировать это регулярное выражение и посмотрите, работает ли оно –

+0

Правильно, я на компьютере с Windows. Я попытался удалить регулярное выражение и получил тот же результат. Просто странно, как он правильно печатает все пути назначения, а затем не помещает в них сгенерированные файлы. –

+0

Спасибо @ user2094477 за то, что вернулись ко мне. Я написал решение в качестве ответа и попытался ответить на ваш вопрос в вашем комментарии. Почувствую это, если вы можете нажать «тик» рядом с ответом, чтобы отметить это как ответ. Чтобы мы могли закрыть это. Благодарю. –

ответ

0

на основе журналов командной строки, звучит, как работает этот файл черновую на окна поле, следовательно, это регулярное выражение;

cwd: String(global_scripts_folder).replace(/\\\\/g, "/").replace(/\\/g, "/")

может причинить вам горевать просто потому; Пути каталогов Windows основаны на \ косой чертой.

Проблема заключается в том, что regexpr пытается превратить все косые черты в обратные косые черты, которые будут работать, если этот файл Grunt будет перенесен из Windows в среду Linux.

Вопрос: Просто странно, как он правильно печатает все пути назначения, а затем не помещает в них сгенерированные файлы.

A: Я думаю, что режим подробной информации из Grunt сообщает о вещах правильно. Просто файл теперь называется jsdocs/datatables-functions.js, а не только datatables-function.js. Как-то окна должны интерпретировать это как полное имя файла.

Надеюсь, это поможет.

+0

Это правда, я на машине Windows ... не по выбору;). Весь мой файл grunt использует слэши без каких-либо проблем. Удаление функций замены не влияет на результаты здесь, и файлы, которые сохраняются, не содержат в них «jsdocs /». Они имеют то же имя с расширением html, добавленным в конец, и размещаются рядом с файлами js. Однако файлы с именем doc-filelist.js, doc-script.js и doc-style.css помещаются в правильный каталог (jsdocs). –