Я хочу использовать компилятор google закрытия для источника javascript, который мы используем. В режиме разработки мы склонны нарушать функциональность для большого количества файлов, но для производства хотели бы объединить их в модули.
При вызове компилятора я могу предоставить ему список файлов для включения в компиляцию, но вывод этого показывает, что компилятор не сохранил порядок списка файлов.
Я искал об этом и обнаружил, что могу использовать goog.provide/good.require, чтобы контролировать зависимости между различными js файлами. Проблема в том, что он добавляет код в мои js, которые мне просто не нужны или не нужны, например:
goog.provide("mainFile")
добавит следующее:
var mainFile = {};
в скомпилированный js файл, чего я не хочу. Мы вообще не используем библиотеку закрытия google, все, что я хочу использовать, это компилятор.
Есть ли способ сообщить компилятору порядок файлов, не включив в него больше функций "библиотеки закрытия", которые мне не нужны? Я могу, конечно, создать собственный инструмент, который сначала возьмет все файлы, объединит их в один, который будет потом компилятором, но я бы предпочел исключить его, если это может быть сделано самим компилятором.
Изменить
Цель состоит в том, чтобы иметь возможность создавать модули, такие как ответ в этом потоке: Использование опции -module в Closure Compiler для создания нескольких выходных файлов
И поэтому я хочу добавить к этому возможность контролировать, какие файлы переходят в какой модуль, а также иметь контроль над их порядком. Пока я не использую подстановочные знаки, но я планирую сделать это в будущем (если это возможно).
просто "cat file1.js file2.js > combination.js && compile..." отлично, но в нашем случае это немного сложнее, и нам придется написать программу /script что делает это на основе некоторой логики. Если мы сможем каким-то образом сообщить компилятору, что порядок файлов в расширенном состоянии может просто сэкономить время реализации такой программы.
Спасибо.