Frage

Ich bin mit wsimport in Java 1.6 (d Build 1.6.0-b105) unter Windows XP 5.1 und ich bin einen aus der Erinnerung Ausnahme bekommen. Früher habe ich JConsole und es scheint, wsimport Verfahren wird bei 64 MB maxing. Wie kann ich den Heap-Speicher für wsimport erhöhen?

Danke,

War es hilfreich?

Lösung

Für mich Umgebungsvariable WSIMPORT_OPTS Einstellung (in einer anderen Antwort vorgeschlagen, und anscheinend in älteren Versionen von wsimport Arbeits) scheint keine Wirkung zu haben.

Für mich ist die folgende hat Arbeit: statt wsimport Verwendung

  

java -classpath $JAVA_HOME/lib/tools.jar com.sun.tools.internal.ws.WsImport

wo $JAVA_HOME ist das JDK (nicht JRE) Stammordner.

Auf dieser Java-Befehlszeile können Sie dann addieren, was JVM Optionen, die Sie möchten. (Ich brauchte -Djavax.net.debug=all für SSL Vertrauen Debuggen.)

(Ich verwende Ubuntu mit OpenJDK 6, Paketversion 6b20-1.9.7-0ubuntu1.)

Andere Tipps

wsimport nimmt JVM Argumente durch die WSIMPORT_OPTS Umgebungsvariable. Also auf Windows, versuchen „set WSIMPORT_OPTS = -Xmx512M“ auf der Kommandozeile ausgeführt wird, bevor wsimport läuft die JVM 512 MB Heap zu geben.

Wenn Sie auf einem ausreichend modernen JDK sind, können Sie die -Xnocompile Option verwenden und dann die übliche Art und Weise den javac Prozess mit zusätzlichem Speicher liefern. (Versuchen Sie wsimport --help zu sehen, ob Ihre Version der Flagge unterstützt wird.)

wsimport scheint in der Lage zu sein, Java-Argumente, um durch die Option -J mit:

wsimport -J-Xmx1024M ...

sollte funktionieren.

Ich dachte Vergangenheit dieses Problems zu erhalten. Der einfachste Weg ist Netbeans zu verwenden (ich verwende v6.8). Ersetzen Sie die Standard-Speichereinstellungen in netbeans.conf unter / etc-Verzeichnis wie folgt aus: -J-Xms768m -J-Xmx768m -J-XX: PermSize = 128m und folgen der üblichen Art und Weise Web-Service-Client folgende JAX WS in Netbeans zu erstellen. Von JConsole, sehe ich, dass Laden ~ 18.500 Klassen insgesamt in dem Speicher zwischen ~ 400 MB bis ~ 650 MB verwenden neigt. Die Anzahl der Klassen auf meinem WSDL basiert generiert / Schemen sind ~ 1500 Klassen. Hoffe, dass dies jemand hilft in ein ähnliches Problem laufen.

Genau das tun, wie unten (WINDOWS)

set CLASSPATH=<JAVA_HOME>\lib\tools.jar;%classpath%
java -Xmx1024m com.sun.tools.internal.ws.WsImport <YOUR_WSDL>

Es sollte funktionieren

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top