Discussion:
com.sun.tools.javadoc: wie?
(zu alt für eine Antwort)
Оlе Ѕtrеісhеr
2017-01-03 15:07:58 UTC
Permalink
Hallo Gruppe,

ich habe ein Paket, welches folgende import-Statements hat:

import com.sun.javadoc.ClassDoc;
import com.sun.javadoc.MemberDoc;
import com.sun.javadoc.Parameter;
import com.sun.javadoc.RootDoc;
import com.sun.javadoc.Type;

und möchte das gerne (per ant) kompilieren. Einfach ein

$ javac MyDoclet.java

ergibt aber ein

$ javac MyDoclet.java
MyDoclet.java:1: error: package com.sun.javadoc does not exist
import com.sun.javadoc.ClassDoc;
^
Was muss ich da als Classpath im ant setzen, so dass es mit allen
sinnvollen Java-Installationen läuft?

Schöne Grüße

Ole
Bernd Laengerich
2017-01-03 15:41:14 UTC
Permalink
Post by Оlе Ѕtrеісhеr
$ javac MyDoclet.java
MyDoclet.java:1: error: package com.sun.javadoc does not exist
import com.sun.javadoc.ClassDoc;
^
Was muss ich da als Classpath im ant setzen, so dass es mit allen
sinnvollen Java-Installationen läuft?
com.sun.javadoc ist in tools.jar des JDK. ant muß also als JAVA_HOME das JDK
und nicht die mitinstallierte JRE nutzen.

Bernd
--
Meine Glaskugel ist mir leider unvorhersehbarerweise vom Balkon gefallen.
P.Liedermann in defa
Patrick Roemer
2017-01-03 16:05:35 UTC
Permalink
Post by Оlе Ѕtrеісhеr
$ javac MyDoclet.java
MyDoclet.java:1: error: package com.sun.javadoc does not exist
import com.sun.javadoc.ClassDoc;
^
Was muss ich da als Classpath im ant setzen, so dass es mit allen
sinnvollen Java-Installationen läuft?
Bei JDK(!)-Installationen >= 1.2 sollte das im $JAVA_HOME/lib/tools.jar
liegen.

Variante 1:

Die system property "java.home" verweist bei einem JDK auf
$JAVA_HOME/jre. Also:

<javac ... classpath="...:${java.home}/../lib/tools.jar" />

oder

<property environment="env"/>
<!-- ... -->
<javac ... classpath="...:${env.JAVA_HOME}/lib/tools.jar" />

Variante 2:

Ant braucht das tools.jar eh selber.

<javac ... includeantruntime="true" />

Damit bekommt man aber auch sämtliches sonstige Geraffel, das Ant so zu
brauchen meint.

Alles nicht völlig überzeugend, aber eine 100% saubere Lösung wüsste ich
jetzt nicht.

Viele Grüße,
Patrick

Lesen Sie weiter auf narkive:
Loading...