¿Cómo utilizar Tomcat 8.5.xy TomEE 7.x con Eclipse?

93

Necesito configurar una versión de servidor Tomcat 8.5.x en Eclipse. Cuando trato de crear un servidor usando Eclipse GUI, obtengo en Eclipse Luna como opción la última versión " Apache Tomcat v8.0 ". Cuando lo selecciono y navego hasta mi servidor Tomcat 8.5.x, aparece este mensaje de error de bloqueo:

La instalación de Apache Tomcat en este directorio es la versión 8.5.0. Se espera una instalación de Tomcat 8.0.

Aparece el mismo error al probar TomEE 7.x, que se basa internamente en Tomcat 8.5.

En Eclipse Neon, la última versión elegida es " Apache Tomcat v9.0 " y da el mismo error. Ni siquiera hay una opción " Apache Tomcat v8.5 ".

¿Hay alguna forma de utilizar Tomcat 8.5 y TomEE 7.x en Eclipse? ¿Cómo?

informatik01
fuente

Respuestas:

131

Tienes que parchear catalina.jar, ya que este es el número de versión que mira el adaptador WTP. Es una verificación bastante inútil, y el adaptador debería permitirle iniciar el servidor de todos modos, pero nadie lo ha pensado todavía.

Durante años y con todas las versiones de Tomcat, esto siempre ha sido un problema.

Para parchear puede hacer lo siguiente:

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

Asegúrese de que tenga el siguiente aspecto (todos los números de versión deben comenzar con 8.0):

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

Luego:

  • jar uf ../catalina.jar org/apache/catalina/util/ServerInfo.properties
  • cd ..
  • rm -rf catalina
dexter meyers
fuente
5
En Tomcat 8.5.3, catalina.jar está en la carpeta lib.
Jon
38
+1. Para aquellos que usan el sistema operativo Windows, puede realizar los cambios necesarios directamente en el archivo JAR. Simplemente abra catalina.jar con su utilidad de archivo de archivos (WinRar, WinZip, 7zip, etc.), navegue hasta el archivo org \ apache \ catalina \ util \ ServerInfo.properties , haga cambios y guárdelos (confirme que desea actualizar el archivo ).
informatik01
16
ACTUALIZACIÓN Y SÓLO necesita cambiar la versión en la server.info=línea (como server.info = Apache Tomcat / 8.0.0 ), y server.number puede dejarse como está. Por ejemplo, yo he dejado intacto como esto: server.number=8.5.4.0. Funciona sin problemas.
informatik01
7
-1: modificar el servidor para que afirme que es una versión diferente es un truco, cuando claramente lo apropiado es modificar eclipse para aceptar la versión real que se ha hecho y se describe en otras respuestas .
Periata Breatta
2
Después de aplicar este truco, obtuve "Se especificó una versión desconocida de Tomcat". error
Atmesh Mishra
41

Hay un parche para Eclipse:
https://bugs.eclipse.org/bugs/attachment.cgi?id=262418&action=edit

Descargue este parche y colóquelo en el directorio de complementos de su instalación de Eclipse. Reemplazará el predeterminado " org.eclipse.jst.server.tomcat.core_1.1.800.v201602282129.jar ".

NOTA
Después de agregar este parche, debe elegir " Apache Tomcat v9.0 " al agregar un entorno de tiempo de ejecución de servidor en Eclipse ( Preferencias> Servidor> Entornos de tiempo de ejecución ).
Es decir, este parche le permite seleccionar Tomcat versión 9.xo Tomcat versión 8.5.x al agregar el entorno de ejecución Apache Tomcat v.9.0.


Se pueden encontrar más detalles en la página de informes de errores relacionados: https://bugs.eclipse.org/bugs/show_bug.cgi?id=494936

FkJ
fuente
Tenga en cuenta que esta actualización ahora parece estar incluida en las distribuciones recientes de Neon, por lo que simplemente elegir la opción Tomcat 9.x podría funcionar sin necesidad de actualizar el complemento.
Periata Breatta
3
No funcionó para la versión: Luna Service Release 2 (4.4.2) mis adaptadores tomcat faltan después del parche
adranale
Estoy usando la versión de eclipse Mars.2 (4.5.2) y apliqué este parche. Ahora los adaptadores tomcat existentes se han ido. Este es un parche loco, lo estoy deshaciendo ahora.
mannedear
36

Para usuarios de Tomcat 8.5.x

Tienes que cambiar el ServerInfo.propertiesarchivo del archivo de Tomcat /lib/catalina.jar.

ServerInfo.properties archivo contiene el siguiente código

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

Simplemente abra el ServerInfo.propertiesarchivo abriendo catalina.jarcon winrar desde la carpeta lib de su Tomcat

ServerInfo.propertiesubicación del archivo en catalina.jares/org/apache/catalina/util/ServerInfo.properties

Aviso: shutdown el servidor Tomcat (si ya está abierto por cmd) antes de hacer estas cosas, de lo contrario, su archivo no cambia y su winrar muestra un error.

Luego cambie el siguiente código en 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

Reinicie su eclipse (si está abierto). Ahora funcionará ...

Captura de pantalla del eclipse

Vinoth Vino
fuente
¿Funciona también en OS X? Acabo de parchear mi catalina.jar y no funciona (nada ha cambiado después del parche). Mi versión de Eclipse es: Eclipse Java EE IDE para desarrolladores web. Versión: Mars.2 Release (4.5.2) Id. De compilación: 20160218-0600
pidabrow
Seguro que también funcionará en OS X. Inicialmente, hice estos cambios solo en mi Mac. Después de eso, planeé usar Tomcat en Windows. Así que lo hice y publiqué como respuesta aquí. Pruébalo ... @piotrdab
Vinoth Vino
10

Por ahora, el lanzamiento del servicio Eclipse Neon está  disponible . Entonces, si alguien todavía tiene este problema, simplemente vaya a

Ayuda → Buscar actualizaciones

e instalar las actualizaciones proporcionadas.

Criptor
fuente
Tenga en cuenta que aún debe seleccionar Apache Tomcat v9.0 de la lista de tiempos de ejecución del servidor, lo cual es un poco contradictorio, pero funciona.
Periata Breatta
1
Tengo Eclipse Java EE IDE para desarrolladores web versión Neon.1 Release (4.6.1) . Entre las versiones más antiguas de Tomcat también tengo v8.0, v8.5y está v9.0disponible en la ventana Definir un nuevo servidor . Tal vez la versión de Eclipse que usa sea diferente.
Cryptor
3
Confirmo que Eclipse Neon.1 (4.6.1) agrega un servidor Tomcat v8.5
Ortomala Lokni
Hmm ... Tengo 4.6.0 con WST actualizado a través de la acción sugerida y todavía no tengo Tomcat 8.5 en la lista ... pero Tomcat 9.0 funciona. Extraño.
Periata Breatta
Eclipse Neon.3 (4.6.3) también tiene un servidor Tomcat v8.5
albciff
4

Esta solución me funcionó. Edité el archivo serverInfo.properties como se indica a continuación:

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

Instale la última versión de eclipse (). Tendría la opción de agregar Tomcat 8.5.

Sandipán
fuente
2

Tuve problemas similares con Eclipse Kepler v3.8 Tenía instalado tomcat v8.5.37. No pude ver Apache v8.5 como una opción. Al hojear StackOverflow, encontré que Apache v9.0 está disponible en Eclipse Neon. Lo bueno es que no tienes que cambiar tu versión de eclipse. En tu Eclipse actual. Descargue WTP (paquete de herramientas web) siguiendo los pasos:

Paso 1: Ayuda >>> Instalar nuevo software. Copie este enlace en el trabajo con: http://download.eclipse.org/webtools/repository/neon

Paso 2: seleccione los adaptadores de servidor JST y Extensiones de adaptadores de servidor JST del primer paquete que vea. Instale esos.

Paso 3: Windows >>> Preferencias >>> Servidor >>> Entornos de tiempo de ejecución >>> Agregar ..

¡Verá Apache v9.0 allí! ¡Funciona!

divyajyotiuk
fuente
¡Gracias! Acababa de (re) instalar Eclipse 2019-03 en mi MacBook, y Tomcat es siempre el complemento más difícil de encontrar. Usé download.eclipse.org/webtools/repository/2019-03
Thad
1

Vaya a la versión de vista previa de tomcat, por ejemplo: tomcat 8.3 y copie el archivo catalina.jar y péguelo en el tomcat existente que tiene el problema

Sanjay
fuente
0

Perdóname por invocar un viejo problema. Pero es como legendario, siempre sucede para los nuevos usuarios. La razón por la que estoy aquí es que quiero dar una respuesta diferente. Bastante simple. Por favor, vaya a windows-> preferencia-> entorno de tiempo de ejecución-> busque y seleccione la carpeta donde descarga el servidor. Detectará automáticamente el servidor y estará listo.

parlad
fuente
0

Supongo que está ejecutando Eclipse Mars, o una versión anterior. Necesita actualizar a Eclipse Neon o posterior

Youssef El-kantri
fuente