Googleは、JavaScript を縮小するコンパイラであるClosureをリリースしました。
製品サイトでは、「Closure Compiler は Page Speed にも統合されました」と記載されています。
Page Speed を使用して Web ページの JavaScript を Closure でコンパイルするにはどうすればよいですか?
(または、単に JavaScript を貼り付けてクロージャを縮小できる Web サイトはありますか?
Googleは、JavaScript を縮小するコンパイラであるClosureをリリースしました。
製品サイトでは、「Closure Compiler は Page Speed にも統合されました」と記載されています。
Page Speed を使用して Web ページの JavaScript を Closure でコンパイルするにはどうすればよいですか?
(または、単に JavaScript を貼り付けてクロージャを縮小できる Web サイトはありますか?
単一のファイルの場合、それは簡単です
java -jar $path_to_jar/compiler.jar --js input_file.js \
--js_output_file output_file.js
マルチファイルプロジェクトの場合calcdeps.py
、compiler.jar
#!/bin/sh$
$CALCDEPS_PATH=/path/to_calcdeps #directory containing calcdeps.py
$JAR_PATH=/path/to_jar #directory containing compiler.jar
$CLOSURE_PATH=/path/to_closure #contains directory "closure"
$CALCDEPS_PATH/calcdeps.py --path $CLOSURE_PATH \
--path . \
--compiler_jar $JAR_PATH/compiler.jar \
--input main_project_file.js \
--output_mode compiled \
> compiled_project_file.js
このようにして、コンパイラーはタイプエラーなどに関する意味のある情報を提供します。タイプ情報に特定のコメントcompiler.jar
を使用するため、コンパイル時にタイプエラーをキャッチできます。JSDoc
追加のコンパイラフラグは、またはオプションcalcdeps.py
とともに渡すことができます-f
--compiler_flags
高度な最適化セットを使用する場合
--compiler_flags "--compilation_level=ADVANCED_OPTIMIZATIONS"
二重引用符と等号に注意してください-bashでその形式を使用する必要がありました
Closure コンパイラが JavaScript アプリケーションとして利用できるようになりました。Java依存関係はもう必要ありません
統合するにはいくつかの方法があります。私はロールアップの一部としてそれを行いました
元:
import rollup from 'rollup';
import closure from 'rollup-plugin-closure-compiler-js';
export default {
entry: 'index.js',
dest: 'dist/build.js',
format: 'iife',
plugins: [
closure({
languageIn: 'ECMASCRIPT6',
languageOut: 'ECMASCRIPT5',
compilationLevel: 'ADVANCED',
warningLevel: 'VERBOSE',
externs: [{src:`
var jQuery;
jQuery.fadeIn = function() {};
var ko;
ko.applyBindings = function(vm) {};
ko.computed = function(a,b) {};
ko.observable = function(a) {};
`}],
})
]
}
詳細はこちら:
http://www.syntaxsuccess.com/viewarticle/using-the-closure-compiler---advanced_optimizations
ClosureCompilerはWindows専用のPageSpeedと統合されているようです。
PHP でクロージャ コンパイラを使用する (CURL を介してホストされるか、コマンド ライン ツールを介してローカルで)
http://bohuco.net/blog/2009/11/google-closure-compiler-with-php/
「Page Speed 1.4 Beta は、Closure Compiler を統合して JavaScript ファイルを自動的に縮小します。ただし、Page Speed Beta と Closure Compiler を個別にダウンロードしてインストールする必要があります。」
http://code.google.com/speed/page-speed/download.html
このバージョンはまだインストールしていませんが、Page Speed が最適化の推奨事項でコンパイルされたコードを提示することは間違いありません。
複数の js ファイルをコンパイルする必要がある場合、またはコンパイル プロセスを簡素化したい場合は、kjscompiler を使用できます: https://github.com/knyga/kjscompiler (Google クロージャ コンパイラに基づく)