Closure Compiler のヒント無し、理不尽エラー
次のようなエラーメッセージに遭遇した場合、ファイル名が原因の可能性があります。Compilation errors occurred とだけ表示される、ノーヒントの暗記問題です。
[03:49:42] Error: gulp-google-closure-compiler: Compilation errors occurred at CompilationStream._compilationComplete (C:\...\node_modules\google-closure-compiler\lib\gulp\index.js:238:28) at C:\...\node_modules\google-closure-compiler\lib\gulp\index.js:208:14 at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
次のように、js_output_file
に指定したファイル名と同じ名前のファイルを、 src
ファイルに含むと発生します。ヒントが一切ないので注意しましょう!
const {src, dest} = require('gulp'),
ClosureCompiler = require('google-closure-compiler').gulp();
module.exports = (done) => {
return src(
['./lib/js/**/*.js', './src/index.js']
).pipe(
ClosureCompiler(
{
dependency_mode : 'PRUNE',
entry_point : 'goog:app',
compilation_level: 'ADVANCED',
js_output_file : 'index.js'
}
)
).pipe(
dest('dist')
);
};
ソースファイルのファイル名か、js_output_file
を変更することで解消します。