Задача расширения Webpack VSTS: файл конфигурации найден, но запись не настроена

Ответ на этот вопрос в SO: Файл конфигурации Webpack найден, но запись не настроена где ответ заключался в том, чтобы экспортировать ваш объект конфигурации webpack.

Дело в том... Я экспортирую его и получаю ту же ошибку.

Я использую расширение задачи Webpack VSTS от Dealogic в VSTS, и вот журнал ошибок:

Ошибка расширения Webpack VSTS: записи не найдены

Вот моя конфигурация веб-пакета файл конфигурации веб-пакета

Любые предложения высоко ценятся.

ОБНОВИТЬ:

Я отладил производственную конфигурацию, запустив веб-пакет локально с рабочей конфигурацией (как предлагается в комментарии ниже) и обнаружил следующее: в результате получилось несоответствие путей при выполнении локально (фактически существующий путь — C:\Git\WebX\ProjectRootFolder\Content..., а не C: \Git\WebX\Content\ ... ), что также должно объяснить ошибки на этапе сборки.

Поэтому я использовал path.resolve в файле конфигурации для разрешения абсолютных путей к файлам входа. Это решило ошибки при локальном запуске.

Но при передаче этого в VSTS и запуске сборки он по-прежнему разрешается в то же сообщение об ошибке.


person MosquitoBite    schedule 24.11.2017    source источник
comment
Что произойдет, если вы запустите команду webpack с этим файлом конфигурации на локальном компьютере?` node_modules\.bin\webpack --config webpack.production.config.js` Проверяете ли вы исходную версию этой сборки? Задайте для переменной system.debug значение true и создайте очередь, а затем поделитесь журналом в OneDrive.   -  person starian chen-MSFT    schedule 27.11.2017
comment
Спасибо starian chen-MSFT за вашу помощь, и это действительно помогло в некоторой степени отладить задачу сборки и точно определить проблему. У меня и моего коллеги есть решение, которое я опишу как ответ ниже,   -  person MosquitoBite    schedule 29.11.2017


Ответы (1)


Расположение модуля Webpack «сбрасывает» расположение конфигурации

Проблема теперь решена, и проблема и решение, насколько мы можем видеть, заключались в следующем:

Дело:

У нас было два конфигурационных файла для webpack:

  • веб-пакет.config.json
  • webpack.production.config.json

В настройке задачи VSTS Webpack расположение конфигурации webpack и Установлено расположение модуля webpack.

Причина проблемы:

Мы почти уверены, что когда мы установили как расположение конфигурации веб-пакета, так и расположение модуля веб-пакета, Webpack начал либо сбрасывать настройку расположения конфигурации, либо (что более вероятно) поищите webpack.production.config.json в другом месте, а не в нашей рабочей папке (возможно, в расположении модуля webpack, но это не на 100 %). Когда Webpack не нашел производственный файл конфигурации, он начал искать имя по умолчанию для файла конфигурации веб-пакета (это webpack.config.js).

Поскольку у нас был наш файл конфигурации разработки, названный обычным именем по умолчанию webpack.config.js, он нашел этот файл и был рад продолжить.

Но в процессе разработки мы запускали webpack как gulp-плагин, и записи передавались через gulp-поток, а это означало, что у нас не было явно объявленных записей в нашей конфигурации разработки.

Вот почему мы получили сообщение об ошибке "Файл конфигурации найден, но нет записей..." независимо от того, как мы сформулировали наши входные строки. Задача Webpack удалила настройки «webpack.production.config.json», но после этого нашла файл конфигурации разработки. К сожалению, я интерпретировал этот журнал как веб-пакет, работающий с производственным файлом конфигурации, что было не так.

Решение:

Наше решение проблемы (и чтобы избежать путаницы, которую мы имели) состояло в следующих шагах:

  • Удалите расположение модуля веб-пакета, чтобы оно было пустым (таким образом, веб-пакет нашел наш производственный файл конфигурации)
  • При использовании нескольких файлов конфигурации: назовите файлы конфигурации веб-пакета "webpack.development.config.js" и "webpack.production.config.js" (или любое описательное имя, отличное от имени по умолчанию webpack.config.js). Это привело бы к сбою вместо того, чтобы создать впечатление, что файл (файл, который мы все равно ожидали...) был найден.

Стоит упомянуть Часть сообщения журнала (здесь отмечена зеленым) выводит только ваши настройки. Таким образом, когда появляется сообщение (отмечено желтым цветом на картинке выше) «Найден файл конфигурации для выхода из системы», это не обязательно означает, что файл конфигурации для выхода из системы в зеленой части журнала является найденным файлом. Но этой ловушки можно избежать, не имея файла конфигурации с именем webpack.config.js.

person MosquitoBite    schedule 29.11.2017