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)?
3 Answers
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.
2 Comments
Bluefire
The code at javabeat.net/2007/04/the-java-6-0-compiler-api throws me a
NullPointerException :oThorbjørn Ravn Andersen
And you use an "java.exe" found in a JDK?
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