CommandLineRunner
クラスから抽出されたドキュメントを使用して、複数の入力ファイルを含めるための5つのグロブ手法を次に示します。
(1)これはmukaのテクニックのバリエーションであり、フラグを削除し--js
ますが、これは不要です。
java -jar compiler.jar \
--js_output_file build/out.js `find ./src/*.js`
ドキュメントから:
--js
argsはデフォルトでファイルとして解釈されるため、フラグ名はオプションです。
これには、のすべての.js
ファイルが含ま/src/
れますが、のサブディレクトリのファイルは含まれません/src/
。
(2)1に似ていますが、すべての.js
ファイル/src/
とそのすべてのサブディレクトリが含まれます。
java -jar compiler.jar \
--js_output_file build/out.js `find ./src/ -name '*.js'`
(3)2に似ていますが、以下を使用しますxargs
:
find ./src/ -name '*.js' \
| xargs java -jar compiler.jar \
--js_output_file build/out.js \
--manage_closure_dependencies
ドキュメントから:
find
クロージャーコンパイラをとと組み合わせて使用する場合は、追加の引数機能を利用すると便利ですxargs
。
find MY_JS_SRC_DIR -name '*.js' \
| xargs java -jar compiler.jar --manage_closure_dependencies
このコマンドは、ディレクトリーfind
内の「* .js」ソース・ファイルのリストを生成し、それらを、コンパイラーを実行するためにコマンドに追加される単一のスペース区切りの引数のセットに変換します
。MY_JS_SRC_DIR
xargs
java
この場合、によって生成された順序がとに関して正しくソートされる可能性が低い--manage_closure_dependencies
ため、このオプションを使用することが重要であることに注意して
ください。find
goog.provide()
goog.requires()
(4)v20140625
リリースでは、(globstar)ワイルドカードのサポートが追加されました。**
これは、すべてのサブディレクトリに再帰的に一致します。
たとえば、これには、内のすべての.js
ファイル/src/
とそのすべてのサブディレクトリが含まれます。
java -jar compiler.jar \
--js_output_file build/out.js './src/**.js'
詳細はこちら。ドキュメントから:
ミニマッチスタイルのグロブパターンを使用することもできます。たとえば、次を使用します。
--js='**.js' --js='!**_test.js'
_test.jsで終わらないすべてのjsファイルを再帰的に含める
Javaドキュメントから:
グロブパターンの解釈には、次のルールが使用されます。
- 文字は、ディレクトリの境界を越えることなく、名前コンポーネントの0個以上の
*
文字と一致します。
- 文字は、ディレクトリの境界を越える0個以上の
**
文字と一致します。
(5)v20140625
リリースには、新しい機能も追加されました。入力パスがディレクトリの場合、そのディレクトリ内のすべてのファイル.js
とすべてのサブディレクトリが含まれます。
たとえば、これには、内のすべての.js
ファイル/src/
とそのすべてのサブディレクトリが含まれます。
java -jar compiler.jar \
--js_output_file build/out.js './src/'
詳細はこちら。