ThingWorx Navigate installieren und konfigurieren > ThingWorx Dienste für die Verwendung von Java 11 aktualisieren
ThingWorx Dienste für die Verwendung von Java 11 aktualisieren
Führen Sie die nachfolgenden Schritte aus, wenn Sie nach der Installation oder dem Upgrade auf ThingWorx Navigate 9.1.0 ein Upgrade auf Java 11 durchführen möchten.
Schritt 1: Aktualisieren Sie den Dienst ThingWorx-Foundation
Das Thema ThingWorx Foundation Installationsprogramm mit Java 11 verwenden im ThingWorx Hilfe-Center enthält Anweisungen zum Aktualisieren des Diensts ThingWorx-Foundation.
Schritt 2: Aktualisieren Sie den Dienst ThingWorx-IntegrationRuntime
Befolgen Sie die nachstehen Schritte auf Ihrem Betriebssystem, um den Dienst ThingWorx-IntegrationRuntime zu aktualisieren:
Windows 
Vorbereitung
Stellen Sie, bevor Sie beginnen, Folgendes sicher:
Java 11 ist installiert.
Das Verzeichnis /bin ist in der Systemvariable PATH festgelegt.
Die Umgebungsvariable JAVA_HOME ist auf das Installationsverzeichnis von Java 11 festgelegt.
Die Datei java.exe befindet sich im Installationsverzeichnis von Java 11. Beispiel: C:\Programme\Java\jdk-11.0.8\bin\java.exe.
Der Dienst ThingWorx-Foundation wird für die Verwendung von Java 11 aktualisiert. Sehen Sie dieses Thema für Anweisungen
Schritt 1: Bestimmen Sie, welche Java-Version verwendet wird
Verwenden Sie den Prozess-Explorer in Ihrer Umgebung, um zu bestimmen, welche Java-Version vom Prozess nssm.exe verwendet wird. Sie können den Prozess-Explorer hier herunterladen.
1. Öffnen Sie eine Eingabeaufforderung als Administrator.
2. Öffnen Sie den Prozess-Explorer über die Eingabeaufforderung. Beispiel:
> C:\Users\Vagrant\Desktop\procexp64.exe
3. Suchen Sie im Prozess-Explorer-Fenster nach dem Prozess nssm.exe, und doppelklicken Sie auf java.exe.
Es wird ein neues Eigenschaftenfenster geöffnet, in dem Details zur Datei java.exe, die zum Ausführen des Prozesses nssm.exe verwendet wird, aufgeführt sind.
4. Klicken Sie im Eigenschaftenfenster auf die Registerkarte Bild, um die verwendete Java-Version zu identifizieren.
Wird Java 11 verwendet, so ist alles voll funktionstüchtig. Es sind keine weiteren Schritte erforderlich. Wird eine andere Java-Version verwendet, fahren Sie mit "Schritt 2: Dienst ThingWorx-IntegrationRuntime aktualisieren" fort.
Schritt 2: Dienst ThingWorx-IntegrationRuntime aktualisieren
1. Beenden Sie den Dienst Thingworx-IntegrationRuntime.
2. Öffnen Sie eine Eingabeaufforderung als Administrator.
3. Navigieren Sie zum Verzeichnis third-party unter dem ThingWorx Integration Runtime Installationsverzeichnis. Beispiel:
> cd C:\Program Files (x86)\ThingWorxIntegrationRuntime\third-party
4. Führen Sie Folgendes aus, um die Dienstkonfiguration Thingworx-IntegrationRuntime zu bearbeiten:
> nssm.exe edit Thingworx-IntegrationRuntime
Das Fenster "Apache Tomcat Properties" wird geöffnet.
5. Öffnen Sie die Registerkarte Anwendung, und bearbeiten Sie die Option Pfad, um die Datei java.exe für Java 11 zu verwenden. Beispiel: C:\Programme\Java\jdk-11.0.8\bin\java.exe
6. Klicken Sie auf Edit service, um Ihre Änderungen zu speichern. Ist die Bearbeitung erfolgreich, so wird ein Popup-Fenster angezeigt.
7. Starten Sie den Dienst Thingworx-IntegrationRuntime.
8. Stellen Sie sicher, dass die Protokolldatei, die im Ordner /IRLogs im ThingWorx Integration Runtime Installationsverzeichnis erstellt wurde, angibt, dass die Verbindung hergestellt wurde.
Beispiel für den Speicherort einer Protokolldatei: C:\Programme (x86)\ThingWorxIntegrationRuntime\IRLogs\IntegrationRuntime-012144ff23af.log
Beispiel für ein Protokoll:
[vert.x-worker-thread-1] INFO c.t.i.ThingworxEdgeVerticle - #########
[vert.x-worker-thread-1] INFO c.t.i.ThingworxEdgeVerticle - Connection Established
[vert.x-worker-thread-1] INFO c.t.i.ThingworxEdgeVerticle - #########
9. Nach dieser Aktualisierung können Sie die Java-Version mithilfe des Prozess-Explorers verifizieren. Ausführliche Anweisungen finden Sie unter "Schritt 1: Bestimmen Sie, welche Java-Version verwendet wird".
Linux 
Vorbereitung
Stellen Sie, bevor Sie beginnen, Folgendes sicher:
Java 11 ist installiert.
Sie haben den Pfad des Java 11-Installationsverzeichnisses dorthin, wo sich die ausführbare Java-Datei befindet, kopiert.
Sie können alternatives --display java | grep 'family java-11' | cut -d' ' -f1 ausführen. Die Ausgabe sollte den Speicherort für die ausführbare Java-Datei anzeigen, z.B.: /usr/lib/jvm/java-11-openjdk-11.0.8.10-0.el8_2.x86_64/bin/java. An diesen Speicherort haben Sie die Datei /usr/lib/jvm/java-11-openjdk-11.0.8.10-0.el8_2.x86_64 kopiert, die zur Konfiguration des Dienstes ThingWorx-IntegrationRuntime verwendet wird.
Der Dienst ThingWorx-Foundation wird für die Verwendung von Java 11 aktualisiert. Sehen Sie dieses Thema für Anweisungen
Aktualisieren Sie den Dienst ThingWorx-IntegrationRuntime
1. Beenden Sie den Dienst Thingworx-IntegrationRuntime.
systemctl stop ThingWorx-Foundation.service
2. Speichern Sie das Skript startup.sh, das sich im Ordner /scripts im Installationsverzeichnis ThingWorx Integration Runtime befindet. Beispiel:
/opt/ThingWorxIntegrationRuntime/scripts/startup.sh.backup
3. Bearbeiten Sie das Skript startup.sh so, dass es auf das Java 11-Installationsverzeichnis verweist, das im Abschnitt "Vorbereitung" kopiert wurde. In diesem Beispiel wurde der Pfad von JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.265.b01-0.el8_2.x86_64/jre auf JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.8.10-0.el8_2.x86_64 aktualisiert.
4. Führen Sie den folgenden Befehl aus:
# systemctl daemon-reload
5. Starten Sie den Dienst Thingworx-IntegrationRuntime:
systemctl start Thingworx-IntegrationRuntime
6. Überprüfen Sie, dass der Dienst Thingworx-IntegrationRuntime Java 11 verwendet:
# systemctl status Thingworx-IntegrationRuntime
Thingworx-IntegrationRuntime.service - Thingworx-IntegrationRuntime
Loaded: loaded (/etc/systemd/system/Thingworx-IntegrationRuntime.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2020-10-07 16:08:43 UTC; 4s ago
Process: 11310 ExecStop=/bin/bash /opt/ThingWorxIntegrationRuntime/scripts/shutdown.sh (code=exited, status=0/SUCCE>
Process: 11336 ExecStart=/bin/bash /opt/ThingWorxIntegrationRuntime/scripts/startup.sh (code=exited, status=0/SUCCE>
Main PID: 11337 (java)
Tasks: 31 (limit: 17467)
Memory: 166.2M
CGroup: /system.slice/Thingworx-IntegrationRuntime.service
└─11337 /usr/lib/jvm/java-11-openjdk-11.0.8.10-0.el8_2.x86_64/bin/java -Dsecret.management.config.file=/op>
Oct 07 16:08:41 pg-foundation-rhel8.vagrantup.com systemd[1]: Starting Thingworx-IntegrationRuntime...
Oct 07 16:08:41 pg-foundation-rhel8.vagrantup.com bash[11336]: Starting Thingworx-IntegrationRuntime service ...
Oct 07 16:08:43 pg-foundation-rhel8.vagrantup.com bash[11336]: Thingworx-IntegrationRuntime service started
Oct 07 16:08:43 pg-foundation-rhel8.vagrantup.com systemd[1]: Started Thingworx-IntegrationRuntime.
7. Entfernen Sie das gesicherte startup.sh.backup Skript.
8. Stellen Sie sicher, dass die Protokolldatei, die im Ordner /IRLogs im ThingWorx Integration Runtime Installationsverzeichnis erstellt wurde, angibt, dass die Verbindung hergestellt wurde.
Beispiel für den Speicherort der Protokolldatei: /opt/ThingWorxIntegrationRuntime/IRLogs/IntegrationRuntime-a268-012144ff23af.log
Beispiel für ein Protokoll:
[vert.x-worker-thread-1] INFO c.t.i.ThingworxEdgeVerticle - #########
[vert.x-worker-thread-1] INFO c.t.i.ThingworxEdgeVerticle - Connection Established
[vert.x-worker-thread-1] INFO c.t.i.ThingworxEdgeVerticle - #########
War dies hilfreich?