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.