質問

V5でのJavaコードのオンザフライcompiliationおよび実行のためのJanino以外の選択肢はありますか?私はV6がコンパイラAPIを持って知っているが、私はV5のVMで動作する必要があります。

私は基本的に、完全なJavaクラスを含む文字列を取り、それをコンパイルし、それをメモリにロードする必要があります。

役に立ちましたか?

解決

何が欲しいのは Janino のようなものです。私たちは年のためにそれを使用しました。あなたは、コード(標準の近くに)それを与え、あなたはそれらを使用することができますので、それはあなたのクラスを提供します。それは実際にはかなりの数の異なるモードを持っており、1.5シンタックスシュガーとオートボクシングなどをサポートしています。

あなたはjavacのを呼び出す場合だけでなく、あなたはそれがない何のための準備をする必要があります、あなたは正しい場所にクラスを置くか、追加のクラスローダを作る処理する必要があります。

Janinoは非常に簡単です。それはあなたが探している正確に何である必要があります。

他のヒント

をプログラムのjavacを呼び出します:

ます。http:// www.juixe.com/techknow/index.php/2006/12/12/invoke-javac-at-runtime/する

   com.sun.tools.javac.Main javac = new com.sun.tools.javac.Main();  

   String[] options = new String[] 
   {  
      "-classpath", classpath, "-d", outputDir, filename  
   };

   javac.compile(options);

すべてのアプリケーションサーバーでは、これまでのためのJSPのためにこれを行うので、明らかにそれが可能です。チェックアウトTomcatのソースコード多分?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top