Die Funktion erzeugt, d.h. lädt und initialisiert, die Java-VM.
Sie ist äquivalent zur JNI-Funktion JNI_CreateJavaVM
.
Aufruf
CALL 'JCI_CreateJavaVM' USING
opt
opt | Optionen für die Java-VM |
Argumente
opt | eine Struktur der Form
Anzahl der VM-Optionen; der Wert darf nicht größer als der für
Zeigt an, ob unbekannte Optionen ignoriert werden sollen (Bedingungsname
Für jede Option die Adresse einer
Optionsabhängig die Adresse einer externen Funktion.Es können alle Optionen angegeben werden, die auch bei der JNI-Funktion |
Returnwert (RETURN-CODE)
JCI-RET-OK
Der Aufruf war erfolgreich.
JCI-RET-EVERSION
Die statisch generierte Versionsnummer in opt ist ungültig (eventuell überschrieben).
JCI-RET-EOPTNUM
Die Anzahl der übergebenen Optionen (VMOptNum
) ist kleiner als 0 oder größer als der Wert, der für <max-options>
angegebene wurde (siehe Abschnitt „JCI-VMOPT - Struktur zur Übergabe von Optionen").
JCI-RET-EEXIST
Es wurde bereits eine Java-VM erzeugt.
JCI-RET-ENOMEM
Für das Erzeugen der Java-VM steht nicht genug Speicherplatz zur Verfügung.
JCI-RET-ERR
Es ist ein nicht näher spezifizierter Fehler aufgetreten (z.B. ungültige Option und IGNORE-UNRECOGNIZED
nicht gesetzt).
Hinweise
Es kann nur eine JavaVM in einem Programmlauf erzeugt werden.
Auch nach Beendigung der VM mit JCI_DestroyJavaVM
kann keine neue Java-VM erzeugt werden.
Beispiel
DATA DIVISION. WORKING-STORAGE SECTION. 01 OptCP. 05 PIC S9(9) COMP-5 VALUE 30. 05 PIC X(30) VALUE '-Djava.class.path=.'. 01 OptEnc. 05 PIC S9(9) COMP-5 VALUE 40. 05 PIC X(40) VALUE '-Dfile.encoding=OSD_EBCDIC_DF04_15'. 01 JVMOptions. COPY JCI-VMOPT REPLACING == <max-options> == BY 2. ... PROCEDURE DIVISION. *> *> Prepare VM options *> MOVE 2 TO VMOptNum. SET IGNORE-UNRECOGNIZED TO FALSE. SET VMOptVstring(1) TO ADDRESS OF OptCP SET VMOptVstring(2) TO ADDRESS OF OptEnc *> *> Create the Java VM *> CALL 'JCI_CreateJavaVM' USING JVMOptions IF RETURN-CODE NOT = JCI-RET-OK ...