Joe Phillips wrote:
I haven't delved too deeply into the bowels of JBOSS/Tomcat *yet* but as I understand it, it contains the java compiler.
Ant is a simpler example. ant (/usr/share/ant/bin/ant) command is a short shell script worth reading.
The Sun java compiler is written in java. javac is merely a front-end
to loading and running the correct java code.
The compile step requires a java compiler. Servlet containers I'm
familiar with (Tomcat, jserv, JBOSS+tomcat) require an external
compiler. AFAIK, they depend on the Sun implementation. I do not know about the
standardization. My guess is there is no standardization between JDK
vendors. It *seems* for Sun JDKs, at least the jarfile and class names
seem consistant. I've never had compiler-related problems running
Tomcat across J2SDKs.
Yes. Like Ant. Sun's javac is not the sole Java compiler. Jikes seems to be an excellent. It is written in C++. Ant is written so it can deal also with other compilers like Jikes.
From: http://java.sun.com/products/jdk/1.2/docs/tooldocs/tools-changes.html: tools.jar - contains non-core class files for support of the tools and utilities in the SDK software
I am using Sun's JDK/JRE provided by Blackdown. I am exporting JAVA_HOME here and there.
But I think that Andrew is right.
Software that relies so strongly on Sun's tools is wrong. Because: - Sun's tools are not free. - tools.jar is by no way a standard. - Some Java compilers do not have any Java interface.
Debian Java Policy stating about JAVA_HOME or tools.jar will for sure make our life easier but it is a bad idea.