注目のセミナー

申込受付中!

危機に強い
プロマネ養成
実践トレーニング

火消しのプロが、 実践演習と個別の メンタリングを通じ、 強いPMを2ヵ月で育成!

ソフト開発

Java技術最前線

ITpro

「Java SE 6完全攻略」第92回 プログラムからコンパイル - Compiler API その4

2008/12/08
櫻庭 祐一=横河電機

前回,動的にJavaのソースを作成し,コンパイルを行う方法を紹介しました。しかし,実際にコンパイルを行うまでの手順は少々多いのが気になるところです。そこで,今回はもう少し簡単に動的にJavaのソースをコンパイルする方法を紹介しましょう。

その方法は本連載「Java SE 6完全攻略」の第58回から10回にわたって解説を行ったJSR 223 Scripting for Java Platformです。

えっ,Javaはスクリプトではないけどと思われた方も多いかもしれません。しかし,Compiler APIとJSR 223を組み合わせることで,Javaをスクリプトのように扱うことが可能なのです。

JSR 223でJavaを扱うには少しだけ準備が必要です。というのも,Java SEにデフォルトで添付されているスクリプトエンジンはJavaScriptのスクリプトエンジンであるMozilla Rhinoしかないためです。

Java用のスクリプトエンジンは,java.netのScripting Projectで提供されています(図1)。

図1●Scripting Project
[画像のクリックで拡大表示]

 では,Scripting ProjectのWebページの左側のサイドバーにあるDocuments & filesをクリックして,ダウンロードのページに移動してみましょう。jsr223-engines.tar.gzもしくはjsr223-engines.zipがスクリプトエンジンです。どちらでもかまわないので,ダウンロードしましょう。

jsr223-engines.tar.gzもしくはjsr223-engines.zipを展開すると,jsr223-enginesというディレクトリが作成されます。

その下には,beanshellからxsltまで,24のディレクトリが作成されます。それぞれ,ディレクトリ名に対応した言語のスクリプトエンジンになります。

ここでは,もちろん,javaを選択します。javaディレクトリの下にはbin,build,libの3つのディレクトリが存在します。binにはjrunscriptでJavaを扱うためのBATファイルとシェルスクリプトファイルがあります。

スクリプトエンジンの本体はbuildディレクトリに存在するjava-engine.jarです。このjava-engine.jarファイルをクラスパスに含めることで,Javaをスクリプトとして扱うことができます。

>> JSR 223でJavaを扱う
次ページ以降はITpro会員(無料)の方のみお読みいただけます。
会員の方は、 ログインしてご覧ください。
まだ会員でない方は、ぜひ登録(無料)していただき、ITproの豊富なコンテンツをご覧ください。

この記事に対するfacebookコメント

nikkeibpITpro

読みましたか? 〜 未読記事をご紹介