2

単なる好奇心から。別のJavaプログラムからJavaファイルをコンパイルして実行できますか? もしそうなら、その知識源への参照を送ることができますか?

4

7 に答える 7

1

完全には読んでいませんでしたが、おそらくこれは役に立ちます。

于 2011-03-03T20:07:33.740 に答える
1

Java 6を使用している場合、これを行うための最良の方法は、javax.tools.JavaCompilerインターフェースを使用することです。

古いバージョンのJavaを使用している場合は、を使用してjavac直接呼び出してから、サブクラス化してオーバーライドRuntime.exec()することでクラスデータをロードする必要があります。ClassLoaderfindClass

于 2011-03-03T20:08:06.597 に答える
1

はい、できますが、JavaランタイムだけでなくJavaコンパイラも必要です。最初にソースを生成して保存し、次に動的クラスローディングを使用します(チュートリアルhttp://tutorials.jenkov.com/java-reflection/dynamic-class-loading-reloading.html

于 2011-03-03T20:08:58.130 に答える
1

Java Compiler Apiとこの小さな例を見てください。

于 2011-03-03T20:09:47.043 に答える
1

javac を使用できます (JDK が必要です):
http://www.javaworld.com/javatips/jw-javatip131.html

于 2011-03-03T20:14:08.280 に答える
1

Java ソース コードが既にファイルにある場合は、Java コンパイラを呼び出すだけです。Java コンパイラは、バージョン 1.6 の JVM ライブラリに組み込まれています。

インターフェースはここに文書化されています。

于 2011-03-03T20:06:23.263 に答える
0

これは、cmd プロンプトを呼び出すか、Java コードの Main クラスを使用して行うことができます。

どうだったかよく覚えていませんが、昔やったことがあります。

于 2011-03-03T20:05:50.933 に答える