Подтвердить что ты не робот

Play Framework 2: JavaScript дублируется в результате минимизации (компилятор google закрытия)

У меня есть странная проблема, связанная с мини-обработкой JavaScript, проблема в том, что при размещении файлов JavaScript, таких как test1.js, test2.js внутри папки /assets/javascript/test и использовании следующих параметров для компилятора замыкания:

val defaultOptions = new CompilerOptions()
    defaultOptions.closurePass = true
    defaultOptions.setProcessCommonJSModules(false)
    defaultOptions.setPrettyPrint(true)
    CompilationLevel.WHITESPACE_ONLY.setOptionsForCompilationLevel(defaultOptions)

Они получают minified, но это приведет к тому, что файлы test1.min.js и test2.min.js будут делиться теми же кодами, что и minified... это приведет к некоторым дополнительным ошибкам JavaScript, когда файлы будут использоваться на одних и тех же страницах и займет больше дискового пространства.

Однако, если CompilerOptions не задано, JavaScript компилируется правильно без дублирования, но уровень компиляции слишком строгий, и наш JavaScript перестает работать, потому что он говорит об ошибках о некоторых вещах, написанных в этих файлах. В целом, процесс миниатюр активируется слишком поздно, чтобы исправить все файлы проекта js, чтобы перейти с параметрами компилятора по умолчанию, поэтому теперь только опция состоит в том, чтобы настроить его на работу таким образом, который использует световую индикацию, но без дублирования js.. любая помощь по этой проблеме будет высоко ценим!

Я использую Play Framework 2.1.1 с Java-проектом.

4b9b3361

Ответ 1

Кажется, что эта тема породила некоторые интересы, я не хочу указывать, что я не смог воспроизвести эту проблему после обновления до play version 2.2.2. Поэтому я буду принимать это как решение, потому что это кажется менее хакированным способом его исправления.

Ответ 2

Обновите Play Framework до версии 2.2.2