Wie verwende ich Tomcat 8.5.x und TomEE 7.x mit Eclipse?

93

Ich muss eine Tomcat 8.5.x- Serverversion in Eclipse einrichten . Wenn ich versuche, einen Server mit der Eclipse- Benutzeroberfläche zu erstellen, erhalte ich in Eclipse Luna als Auswahl die neueste Version " Apache Tomcat v8.0 ". Wenn ich es auswähle und zu meinem Tomcat 8.5.x-Server navigiere, wird folgende Blockierungsfehlermeldung angezeigt:

Die Apache Tomcat-Installation in diesem Verzeichnis ist Version 8.5.0. Eine Tomcat 8.0-Installation wird erwartet.

Der gleiche Fehler tritt auf, wenn Sie TomEE 7.x ausprobieren, das intern auf Tomcat 8.5 basiert.

In Eclipse Neon ist die neueste Version als Auswahl " Apache Tomcat v9.0 " und es wird der gleiche Fehler ausgegeben . Es gibt nicht einmal die Option " Apache Tomcat v8.5 ".

Gibt es eine Möglichkeit, Tomcat 8.5 und TomEE 7.x in Eclipse zu verwenden? Wie?

informatik01
quelle

Antworten:

130

Sie müssen patchen catalina.jar, da dies die Versionsnummer ist, die der WTP-Adapter sieht. Es ist eine ziemlich nutzlose Prüfung, und der Adapter sollte es Ihnen trotzdem ermöglichen, den Server zu starten, aber das hat noch niemand gedacht.

Seit Jahren und bei jeder Version von Tomcat ist dies immer ein Problem.

Zum Patchen können Sie Folgendes tun:

  • cd [tomcat or tomee home]/lib
  • mkdir catalina
  • cd catalina/
  • unzip ../catalina.jar
  • vim org/apache/catalina/util/ServerInfo.properties

Stellen Sie sicher, dass es wie folgt aussieht (die Versionsnummern müssen alle mit 8.0 beginnen):

server.info=Apache Tomcat/8.0.0
server.number=8.0.0
server.built=May 11 2016 21:49:07 UTC

Dann:

  • jar uf ../catalina.jar org/apache/catalina/util/ServerInfo.properties
  • cd ..
  • rm -rf catalina
Dexter Meyer
quelle
5
In Tomcat 8.5.3 befindet sich Catalina.jar im Ordner lib.
Jon
37
+1. Für Benutzer unter Windows können Sie die erforderlichen Änderungen direkt in der JAR-Datei vornehmen. Öffnen Sie einfach die catalina.jar mit dem Dateiarchiv - Dienstprogramm (WinRar, WinZip, 7zip usw.), gehen Sie zum org \ Apache \ catalina \ util \ ServerInfo.properties Datei, ändern und speichern (bestätigen , dass Sie das Archiv aktualisieren ).
informatik01
16
UPDATE Und Sie müssen NUR die Version in der server.info=Zeile ändern (wie server.info = Apache Tomcat / 8.0.0 ), und server.number kann unverändert bleiben. Zum Beispiel habe ich es so unberührt gelassen : server.number=8.5.4.0. Funktioniert ohne Probleme.
informatik01
7
-1: Das Ändern des Servers, um zu behaupten, eine andere Version zu sein, ist ein bisschen hackig, wenn es eindeutig angebracht ist, Eclipse so zu ändern, dass es die tatsächliche Version akzeptiert, die durchgeführt wurde und in anderen Antworten beschrieben wird .
Periata Breatta
2
Nachdem ich diesen Hack angewendet hatte, erhielt ich "Unbekannte Version von Tomcat wurde angegeben." Fehler
Atmesh Mishra
41

Es gibt einen Patch für Eclipse:
https://bugs.eclipse.org/bugs/attachment.cgi?id=262418&action=edit

Laden Sie diesen Patch herunter und legen Sie ihn im Plugins- Verzeichnis Ihrer Eclipse-Installation ab. Es ersetzt die Standardeinstellung " org.eclipse.jst.server.tomcat.core_1.1.800.v201602282129.jar ".

HINWEIS
Nachdem Sie diesen Patch hinzugefügt haben, müssen Sie " Apache Tomcat v9.0 " auswählen, wenn Sie eine Server-Laufzeitumgebung in Eclipse hinzufügen ( Einstellungen> Server> Laufzeitumgebungen ).
Mit diesem Patch können Sie entweder Tomcat Version 9.x oder Tomcat Version 8.5.x auswählen, wenn Sie eine Apache Tomcat v.9.0-Laufzeitumgebung hinzufügen.


Weitere Informationen zu finden Sie auf der entsprechenden Fehlerberichtsseite: https://bugs.eclipse.org/bugs/show_bug.cgi?id=494936

FkJ
quelle
Beachten Sie, dass dieses Update jetzt in den neuesten Distributionen von Neon enthalten zu sein scheint. Wenn Sie also einfach die Option Tomcat 9.x auswählen, funktioniert dies möglicherweise, ohne dass das Plugin aktualisiert werden muss.
Periata Breatta
3
Funktionierte nicht für Version: Luna Service Release 2 (4.4.2) Meine Tomcat-Adapter fehlen nach dem Patch
adranale
Ich verwende die Eclipse-Version Mars.2 (4.5.2) und habe diesen Patch angewendet. Jetzt sind alle vorhandenen Tomcat-Adapter weg. Das ist ein verrückter Patch, ich rolle ihn jetzt zurück.
bemannt
36

Für Tomcat 8.5.x- Benutzer

Sie müssen die Datei von Tomcats Datei ändern .ServerInfo.properties/lib/catalina.jar

ServerInfo.properties Datei enthält den folgenden Code

server.info=Apache Tomcat/8.5.4
server.number=8.5.4.0
server.built=Jul 6 2016 08:43:30 UTC

Öffnen Sie einfach die ServerInfo.propertiesDatei, indem Sie die catalina.jarmit winrar aus dem lib- Ordner Ihres Tomcat öffnen

ServerInfo.propertiesDateispeicherort in catalina.jarist/org/apache/catalina/util/ServerInfo.properties

Hinweis: shutdown Der Tomcat-Server (falls er bereits von cmd geöffnet wurde), bevor Sie diese Schritte ausführen , andernfalls ändert sich Ihre Datei nicht und Ihr WinRAR zeigt einen Fehler an.

Ändern Sie dann den folgenden Code in ServerInfo.properties

server.info=Apache Tomcat/8.0.8.5.4
server.number=8.5.4.0
server.built=Jul 6 2016 08:43:30 UTC

Starten Sie Ihre Eclipse neu (falls geöffnet). Jetzt wird es funktionieren ...

Screenshot der Sonnenfinsternis

Vinoth Vino
quelle
Funktioniert es auch unter OS X? Ich habe gerade meine Catalina.jar gepatcht und es funktioniert nicht (nach dem Patch hat sich nichts geändert). Meine Eclipse-Version lautet: Eclipse Java EE IDE für Webentwickler. Version: Mars.2 Release (4.5.2) Build-ID: 20160218-0600
Pidabrow
Sicher, es wird auch unter OS X funktionieren. Anfangs habe ich diese Änderungen nur auf meinem Mac vorgenommen. Danach wollte ich Tomcat unter Windows verwenden. Also habe ich es einfach gemacht und hier als Antwort gepostet. Probieren Sie es aus ... @piotrdab
Vinoth Vino
10

Derzeit ist die Eclipse Neon-Serviceversion  verfügbar . Wenn also noch jemand auf dieses Problem stößt, gehen Sie einfach zu

Hilfe → Nach Updates suchen

und installieren Sie die bereitgestellten Updates.

Kryptor
quelle
Beachten Sie, dass Sie weiterhin Apache Tomcat v9.0 aus der Liste der Serverlaufzeiten auswählen müssen. Dies ist zwar etwas kontraintuitiv, funktioniert jedoch.
Periata Breatta
1
Ich habe Eclipse Java EE IDE für Webentwickler Version Neon.1 Release (4.6.1) . Ich habe unter den älteren Tomcat vestions auch v8.0, v8.5und v9.0in einen neuen Server definieren Fenster. Möglicherweise ist die von Ihnen verwendete Eclipse-Version anders.
Cryptor
3
Ich bestätige, dass Eclipse Neon.1 (4.6.1) einen Tomcat v8.5 Server
Ortomala Lokni
Hmm .. Ich habe 4.6.0 mit WST über die vorgeschlagene Aktion aktualisiert und habe immer noch nicht Tomcat 8.5 auf der Liste ... aber Tomcat 9.0 funktioniert. Bizarr.
Periata Breatta
Eclipse Neon.3 (4.6.3) hat auch einen Tomcat v8.5 Server
Albciff
4

Diese Problemumgehung hat bei mir funktioniert. Ich habe die Datei serverInfo.properties wie folgt bearbeitet :

server.info=Apache Tomcat/8.0.0
server.number=8.0.0.0
server.built=Oct 6 2016 20:15:31 UTC
Vikd
quelle
2

Installieren Sie die neueste Version von eclipse (). Es hätte die Option, Tomcat 8.5 hinzuzufügen.

Sandipan
quelle
2

Ich hatte ähnliche Probleme mit Eclipse Kepler v3.8. Ich hatte Tomcat v8.5.37 installiert. Ich konnte Apache v8.5 nicht als Option sehen. Beim Durchblättern von StackOverflow stellte ich fest, dass Apache v9.0 auf Eclipse Neon verfügbar ist. Coole Sache ist, dass Sie Ihre Eclipse-Version nicht ändern müssen. In Ihrer aktuellen Eclipse. Laden Sie WTP (Web Tools Package) wie folgt herunter:

Schritt 1: Hilfe >>> Neue Software installieren. Kopieren Sie diesen Link in "Arbeiten mit: http://download.eclipse.org/webtools/repository/neon"

Schritt 2: Wählen Sie aus dem ersten angezeigten Paket JST-Serveradapter und JST-Serveradaptererweiterungen aus. Installieren Sie diese.

Schritt 3: Windows >>> Einstellungen >>> Server >>> Laufzeitumgebungen >>> Hinzufügen ..

Dort sehen Sie Apache v9.0! Es klappt!

divya_uk
quelle
Vielen Dank! Ich hatte gerade Eclipse 2019-03 auf meinem MacBook (neu) installiert, und Tomcat ist für mich immer das am schwierigsten zu findende Plugin. Ich habe download.eclipse.org/webtools/repository/2019-03
Thad
1

Gehen Sie zur Vorschau-Version von Tomcat, z. B.: Tomcat 8.3, kopieren Sie die Datei catalogina.jar und fügen Sie sie in den vorhandenen Tomcat ein, bei dem das Problem auftritt

Sanjay
quelle
0

Vergib mir, dass ich mich auf ein altes Problem berufen habe. Aber es ist wie legendär, immer für neue Benutzer passieren. Der Grund, warum ich hier bin, ist, dass ich eine andere Antwort verwenden möchte. Ziemlich einfach. Bitte gehen Sie zu Windows-> Einstellungen-> Laufzeitumgebung-> Suchen und wählen Sie den Ordner aus, in den Sie den Server herunterladen. Der Server wird automatisch erkannt und Sie können loslegen.

parlad
quelle
0

Ich vermute, dass Sie Eclipse Mars oder eine noch frühere Version ausführen. Sie müssen auf Eclipse Neon oder höher aktualisieren

Youssef El-Kantri
quelle