Come utilizzare Tomcat 8.5.x e TomEE 7.x con Eclipse?


93

Devo configurare una versione del server Tomcat 8.5.x in Eclipse. Quando provo a creare un server utilizzando Eclipse GUI, ottengo in Eclipse Luna come scelta l'ultima versione " Apache Tomcat v8.0 ". Quando lo seleziono e accedo al mio server Tomcat 8.5.x, ricevo questo messaggio di errore di blocco:

L'installazione di Apache Tomcat in questa directory è la versione 8.5.0. È prevista un'installazione di Tomcat 8.0.

Lo stesso errore viene visualizzato durante il tentativo di TomEE 7.x, basato internamente su Tomcat 8.5.

In Eclipse Neon l'ultima versione scelta è " Apache Tomcat v9.0 " e dà lo stesso errore. Non c'è nemmeno un'opzione " Apache Tomcat v8.5 ".

Esiste un modo per utilizzare Tomcat 8.5 e TomEE 7.x in Eclipse? Come?

Risposte:


131

È necessario applicare la patch catalina.jar, poiché questo è il numero di versione esaminato dall'adattatore WTP. È un controllo abbastanza inutile e l'adattatore dovrebbe consentire comunque di avviare il server, ma nessuno lo ha ancora pensato.

Per anni e con ogni versione di Tomcat questo è sempre un problema.

Per applicare la patch puoi fare quanto segue:

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

Assicurati che sia simile al seguente (i numeri di versione devono iniziare tutti con 8.0):

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

Poi:

  • jar uf ../catalina.jar org/apache/catalina/util/ServerInfo.properties
  • cd ..
  • rm -rf catalina

5
In Tomcat 8.5.3, catalina.jar si trova nella cartella lib.
Jon

38
+1. Per coloro che utilizzano il sistema operativo Windows, è possibile apportare le modifiche richieste direttamente nel file JAR. Basta aprire catalina.jar con l'utilità di archivio file (WinRar, WinZip, 7zip ecc.), Accedere al file org \ apache \ catalina \ util \ ServerInfo.properties , apportare le modifiche e salvarle (confermare che si desidera aggiornare l'archivio ).
informatik01

16
AGGIORNAMENTO E devi SOLO cambiare la versione nella server.info=riga (come server.info = Apache Tomcat / 8.0.0 ) e server.number può essere lasciato così com'è. Per esempio ho lasciato intatto in questo modo: server.number=8.5.4.0. Funziona senza problemi.
informatik01

7
-1: modificare il server per affermare di essere una versione diversa è un po 'un trucco, quando chiaramente la cosa appropriata da fare è modificare eclipse per accettare la versione effettiva che è stata fatta ed è descritta in altre risposte .
Periata Breatta

2
Dopo aver applicato questo hack, ho ottenuto "È stata specificata una versione sconosciuta di Tomcat". errore
Atmesh Mishra

41

C'è una patch per Eclipse:
https://bugs.eclipse.org/bugs/attachment.cgi?id=262418&action=edit

Scarica questa patch e inseriscila nella directory dei plugin della tua installazione di Eclipse. Sostituirà il valore predefinito " org.eclipse.jst.server.tomcat.core_1.1.800.v201602282129.jar ".

NOTA
Dopo aver aggiunto questa patch, è necessario scegliere " Apache Tomcat v9.0 " quando si aggiunge un ambiente di runtime del server in Eclipse ( Preferenze> Server> Ambienti di runtime ).
Cioè questa patch consente di selezionare Tomcat versione 9.x o Tomcat versione 8.5.x quando si aggiunge l'ambiente di runtime Apache Tomcat v.9.0.


Maggiori dettagli su possono essere trovati sulla relativa pagina di segnalazione di bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=494936


Nota che questo aggiornamento ora sembra essere incluso nelle recenti distribuzioni di Neon, quindi la semplice scelta dell'opzione Tomcat 9.x potrebbe funzionare senza la necessità di aggiornare il plug-in.
Periata Breatta

3
Non ha funzionato per la versione: Luna Service Release 2 (4.4.2) i miei adattatori Tomcat mancano dopo la patch
adranale

Sto usando la versione di eclipse Mars.2 (4.5.2) e ho applicato questa patch. Ora gli adattatori Tomcat esistenti sono tutti spariti. Questa è una patch pazzesca, la sto riportando indietro ora.
equipaggio fino al

36

Per gli utenti Tomcat 8.5.x.

Devi cambiare il ServerInfo.propertiesfile del file di Tomcat /lib/catalina.jar.

ServerInfo.properties file contiene il codice seguente

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

Basta aprire il ServerInfo.propertiesfile aprendo catalina.jarcon winrar dalla cartella lib di Tomcat

ServerInfo.propertiesla posizione del file in catalina.jarè/org/apache/catalina/util/ServerInfo.properties

Avviso: shutdown il server Tomcat (se è già aperto da cmd) prima di fare queste cose altrimenti il ​​tuo file non cambia e il tuo winrar mostra un errore.

Quindi modificare il codice seguente 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

Riavvia l' eclissi (se aperta). Ora funzionerà ...

ScreenShot di eclipse


Funziona anche su OS X? Ho appena patchato il mio catalina.jar e non funziona (non è cambiato nulla dopo la patch). La mia versione di Eclipse è: Eclipse Java EE IDE per sviluppatori Web. Versione: Mars.2 Release (4.5.2) Build id: 20160218-0600
pidabrow

Sicuramente funzionerà anche su OS X. Inizialmente, ho apportato queste modifiche solo sul mio Mac. Dopo di che ho pianificato di utilizzare Tomcat su Windows. Quindi l'ho appena fatto e ho postato come risposta qui. Provalo ... @piotrdab
Vinoth Vino

10

Per ora è disponibile la release del servizio Eclipse Neon  . Quindi, se qualcuno ha ancora questo problema, vai a

Aiuto → Controlla aggiornamenti

e installa gli aggiornamenti forniti.


Tieni presente che devi ancora selezionare Apache Tomcat v9.0 dall'elenco dei tempi di esecuzione del server, il che è un po 'controintuitivo, ma funziona.
Periata Breatta

1
Ho Eclipse Java EE IDE per sviluppatori Web versione Neon.1 Release (4.6.1) . Tra vecchie vestions Tomcat ho anche v8.0, v8.5e v9.0disponibile in Definire un nuovo server finestra. Forse la versione di Eclipse che usi è diversa.
Cryptor

3
Confermo che Eclipse Neon.1 (4.6.1) aggiunge un server Tomcat v8.5
Ortomala Lokni

Hmm .. Ho 4.6.0 con WST aggiornato tramite l'azione suggerita e ancora non ho Tomcat 8.5 nell'elenco ... ma Tomcat 9.0 funziona. Bizzarro.
Periata Breatta

Eclipse Neon.3 (4.6.3) ha anche un server Tomcat v8.5
albciff

4

Questa soluzione alternativa ha funzionato per me. Ho modificato il file serverInfo.properties come indicato di seguito:

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

2

Installa l'ultima versione di eclipse (). Avrebbe la possibilità di aggiungere Tomcat 8.5.


2

Ho avuto problemi simili con Eclipse Kepler v3.8 Avevo installato tomcat v8.5.37. Non riuscivo a vedere Apache v8.5 come opzione. Scorrendo StackOverflow ho scoperto che Apache v9.0 è disponibile su Eclipse Neon. La cosa interessante è che non devi cambiare la tua versione di eclissi. Nel tuo attuale Eclipse. Scarica WTP (pacchetto di strumenti Web) seguendo i passaggi:

Passaggio 1: Guida >>> Installa nuovo software. Copia questo collegamento in Lavora con: http://download.eclipse.org/webtools/repository/neon

Passaggio 2: seleziona JST Server Adapters e JST Server Adapters Extensions dal primo pacchetto che vedi. Installa quelli.

Passaggio 3: Windows >>> Preferenze >>> Server >>> Ambienti runtime >>> Aggiungi ..

Vedrai Apache v9.0 lì! Funziona!


Grazie! Avevo appena (ri) installato Eclipse 2019-03 sul mio MacBook e Tomcat è sempre il plugin più difficile da trovare per me. Ho usato download.eclipse.org/webtools/repository/2019-03
Thad

1

Vai alla versione di anteprima di tomcat ad esempio: tomcat 8.3 e copia il file catalina.jar e incollalo nel tomcat esistente che stai affrontando il problema


0

Perdonami per aver invocato il vecchio problema. Ma è come leggendario, succede sempre per i nuovi utenti. Il motivo per cui sono qui è che voglio fornire una risposta diversa. Piuttosto semplice. Per favore vai a Windows-> preferenze-> Runtime Environment-> cerca e seleziona la cartella in cui scarichi il server. Rileverà automaticamente il server e sei a posto.


0

Immagino che tu stia utilizzando Eclipse Mars o una versione anche precedente. Devi eseguire l'aggiornamento a Eclipse Neon o successivo

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.