Bluefire
Bluefire

Reputation: 14099

Compile a Java file... with a Java program

Is it possible for a program written in Java to compile a file using the JDK compiler (aside from using Java to open command prompt and throw the "javac" command at it to compile the file)?

Upvotes: 9

Views: 8057

Answers (3)

In Java 6 and onwards there is an API to use the compiler. This might be what you are looking for.

http://www.javabeat.net/2007/04/the-java-6-0-compiler-api/

http://docs.oracle.com/javase/6/docs/api/javax/tools/JavaCompiler.html

Note that you need a JDK to have the compiler available. JRE will not be enough. If that is a problem consider embedding the Eclipse Java compiler in your application.

Upvotes: 13

Dungeon Hunter
Dungeon Hunter

Reputation: 20583

Java 6 has a Compiler API Check out Java Compiler Class Javadoc

http://docs.oracle.com/javase/6/docs/api/javax/tools/JavaCompiler.html

and an example

http://www.javabeat.net/2007/04/the-java-6-0-compiler-api/

Upvotes: 10

Dan
Dan

Reputation: 1018

The Apache Byte Code Engineering Library is your friend.

http://commons.apache.org/bcel/

Upvotes: 3

Related Questions