Aktivieren Sie bitte JavaScript, um diese Seite anzeigen zu können.

Altova MapForce 2020 Professional Edition

Behebung von Ausnahmeereignissen im Zusammenhang mit zu wenig Arbeitsspeicher bei der Java-Kompilierung

Es kommt vor, dass bei komplexen Mappings mit großen Schemas eine so große Menge von Code generiert wird, dass es bei der Kompilierung mit Ant zu einem java.lang.OutofMemory-Ausnahmeereignis kommt. Um dieses Problem zu beheben:

 

Fügen Sie die Umgebungsvariable Ant_OPTS hinzu. Damit werden bestimmte Ant-Optionen festgelegt, wie  z.B. wie viel Arbeitsspeicher dem Compiler zur Verfügung steht. Sie können die Werte wie unten gezeigt definieren.

 

cg_ANT_OPTS

 

Um sicherzustellen, dass der Compiler und der generierte Code im selben Prozess wie Ant ausgeführt wird, ändern Sie das Attribut fork in der Datei build.xml in false um.

 

Je nach verfügbarem Arbeitsspeicher auf Ihrem Computer und je nach Projektgröße müssen Sie diese Werte eventuell anpassen. Nähere Informationen finden Sie in der Java VM-Dokumentation.

 

Bei der Ausführung des ant jar-Befehls wird eventuell eine Fehlermeldung angezeigt, dass "[...] das Archiv mehr als 65535 Einheiten enthält". Damit diese Fehlermeldung nicht auftritt, wird empfohlen, Versionen ab Ant 1.9 zu verwenden und in der Datei build.xml zum Element <jar> zip64mode="as-needed" hinzuzufügen.

 

Reservieren von Methodennamen:

Beim Anpassen der Codegenerierung mittels der vorgegebenen SPL-Dateien ist es unter Umständen nötig, Methodennamen zu reservieren. Gehen Sie dazu folgendermaßen vor:

 

1.Navigieren Sie zum Unterverzeichnis  zu den entsprechenden Programmiersprachen des spl-Unterverzeichnisses desProgramminstallationsverzeichnisses z.B.  e.g. C:\Program Files\Altova\MapForce2020\spl\java\.
2.Öffnen Sie entweder die Datei settings.spl und fügen Sie in den Abschnitt "reserve" eine neue Zeile ein, z.B. reserve "myReservedWord"
3.Generieren Sie den Programmcode erneut.

 

 

© 2019 Altova GmbH