Dieser Abschnitt befasst sich mit Java-spezifischen Informationen zur Generierung von
Java™ für beliebige
Java-Umgebungen,
iSeries eingeschlossen. In diesem Abschnitt finden Sie
eine Übersicht über die Java-Generierung. Im Folgenden
werden darüber hinaus
die folgenden Themen behandelt:
- Eingaben bei der Java-Generierung
- Ausgaben bei der Java-Generierung
- Alternativen in der Java-Vorbereitungsphase
- Implementierung der Java-Ausgabe
- Generierung von Java-Wrappern
Der Prozess für die Generierung von Java-Code und anderen
Ausgaben aus dem EGL-Quellcode besteht
aus verschiedenen Phasen. Die Phasen werden im Abschnitt 'Übersicht über die
EGL-Generierung' kurz beschrieben (siehe Links am Ende dieses Abschnitts). Es gibt jedoch bestimmte
Unterschiede zwischen dem Generierungsprozess für Java und dem
Generierungsprozess für COBOL. Im Folgenden finden Sie einen groben Überblick über den Prozess, der
die Java-Generierung auszeichnet.
Der Generierungsprozess schließt die folgenden Phasen ein, für die wiederum bestimmte
Abschnitte erforderlich sind:
- Überprüfung für die Ziellaufzeitumgebung
- Die Überprüfungsphase ist die erste Phase. Für die Überprüfungsphase sind folgende
Eingabeabschnitte erforderlich:
- Die zu generierenden Abschnitte
- Der Builddeskriptorabschnitt, der Folgendes bereitstellt:
- Die Ziellaufzeitumgebung, die in der Builddeskriptoroption system
angegeben ist
- Den Namen des Verbindungsoptionsabschnitts (soweit vorhanden), wie in der Builddeskriptoroption
linkage angegeben
- Den Namen des Ressourcenzuordnungsabschnitts (soweit vorhanden), wie in
der Builddeskriptoroption
resourceAssociation angegeben
- Eine Untergruppe von Builddeskriptoroptionen (z.
B. die Builddeskriptoroption validateSQLStatements), die in der Überprüfungsphase verwendet werden
Die Überprüfung, die zur Generierungszeit erfolgt, richtet sich nach der
Ziellaufzeitumgebung. Von EGL werden bei dieser Überprüfung die folgenden Aktionen ausgeführt:- Es wird überprüft, ob der Quellcodemit der Ziellaufzeitumgebung kompatibel
ist.
- Es wird überprüft, ob die Einträge im Verbindungsoptionsabschnitt und im
Ressourcenzuordnungsabschnitt in Bezug auf die Ziellaufzeitumgebung korrekt sind.
- Es werden gegebenenfalls bestimmte erforderliche Überprüfungen ausgeführt, z. B. Überprüfungen,
die mit der Builddeskriptoroption validateSQLStatements angefordert
werden.
- Produktion
- In dieser Phase werden die EGL-Abschnitte in
Java-Quellcodegeneriert. Diese Phase erfordert die
folgenden Eingaben:
- Überprüfter EGL-Quellencode
- Alle Builddeskriptoroptionen, die in der Überprüfungsphase überprüften Optionen eingeschlossen
- Verbindungsoptionsabschnitte
- Ressourcenzuordnungsabschnitte
- Weitere Informationen, z. B. die im Builddeskriptorabschnitt definierten
Java-Laufzeiteigenschaften
Nach der Generierung enthält die Ausgabe zu dieser Phase die folgenden
Elemente:- Java-Quellcode
- Einen Buildplan, der die Vorbereitungsphase für Java
steuert, wenn die Generierung nicht für ein Projekt im Arbeitsbereich erfolgt. Der Buildplan
richtet sich nach den definierten Builddeskriptoroptionen.
- Weitere Ausgabe, die sich nach dem Typ des generierten Abschnitts und den
definierten
Builddeskriptoroptionen richtet
Fehlernachrichten werden, soweit vorhanden, in der Sicht
'EGL-Generierungsergebnisse' angezeigt.
- Vorbereitung
- In der dritten Phase des Generierungsprozesses wird Ihre Ausgabe für die Implementierung in
der
Ziellaufzeitumgebung von EGL vorbereitet. Bei der
Java-Generierung kann die Vorbereitungsphase variieren,
je nachdem, welche Position Sie für die Ausgabe der Generierung
verwenden. Sie geben die zu verwendende Methode an, indem Sie bestimmte
Builddeskriptoroptionen wie folgt definieren:
- Nehmen Sie die Generierung im Arbeitsbereich vor und stellen Sie die Ausgabe der
Produktionsphase mit der Builddeskriptoroption genProject in ein
vorhandenes Projekt. Der Buildplan wird in diesem Fall nicht von EGL erstellt und der
Build-Server und die Schritte für die
Übertragung kommen nicht zur Anwendung. Wenn Sie die Workbenchvorgabe
Automatischer Build aktiviert haben, erfolgt der Vorbereitungsschritt
(Kompilierung des Java-Codes und sonstiger
Generierungsausgaben) automatisch. Ist diese Vorgabe nicht aktiviert, können Sie das Projekt zu
einem späteren Zeitpunkt erstellen.
- Stellen Sie die Generierungsausgabe in ein Verzeichnis außerhalb des Arbeitsbereichs auf
derselben
Workstation. Dies erreichen Sie, indem Sie die Option genDirectory
definieren, die Option destHost jedoch nicht. Bei diesem Szenario wird
von EGL ein Buildplan erstellt, der wiederum den
Java-Compiler auf der lokalen Workstation startet. Der
Build-Server und der Schritt für die Übertragung werden von EGL jedoch nicht verwendet.
- Stellen Sie die Ausgabe der Generierung in ein Verzeichnis außerhalb des Arbeitsbereichs und
übertragen Sie die Ausgabe dann zur Vorbereitung an ein fernes System. Für diesen Zweck werden die
Builddeskriptoroptionen destHost und
destDirectory
sowie zugehörige Builddeskriptoroptionen verwendet. Bei diesem Szenario wird von EGL ein
Buildplan erstellt, um die Reihenfolge zu steuern, in der Ausgabe an das ferne System
gesendet wird. Der Buildplan steuert darüber hinaus die Build-Scripts, die auf dem fernen
System ausgeführt werden.
Java-Buildpfad
Neben dem EGL-Buildpfad können Sie einen
Java-Buildpfad definieren, um Probleme bei der
Java-Generierung zu beheben.
Von EGL
wird Ihr Buildpfad nicht automatisch erstellt. Dies kann zur Generierungszeit zu Problemen führen. Angenommen, Sie verfügen über ein Projekt A, das ein Wörterverzeichnis in Projekt B verwendet. Sie
müssen in diesem Fall Projekt B in den Java-Buildpfad für
Projekt A stellen.
Ändern Sie Ihren Java-Buildplan für
ein Projekt, indem Sie im Projektexplorer mit der rechten Maustaste auf den
Projektnamen und dann auf
klicken. Wählen Sie alle Projekte aus, die Referenzen enthalten, die von Ihnen aufgelöst
werden müssen.