Como usar o Tomcat 8.5.xe TomEE 7.x com Eclipse?

93

Preciso configurar uma versão do servidor Tomcat 8.5.x no Eclipse. Quando tento criar um servidor usando Eclipse GUI, obtenho no Eclipse Luna como escolha a versão mais recente " Apache Tomcat v8.0 ". Quando eu o seleciono e procuro meu servidor Tomcat 8.5.x, recebo esta mensagem de erro de bloqueio:

A instalação do Apache Tomcat neste diretório é a versão 8.5.0. Uma instalação do Tomcat 8.0 é esperada.

O mesmo erro aparece ao tentar o TomEE 7.x, que é baseado internamente no Tomcat 8.5.

No Eclipse Neon a última versão escolhida é " Apache Tomcat v9.0 " e dá o mesmo erro. Não há nem mesmo uma opção " Apache Tomcat v8.5 ".

Existe uma maneira de usar Tomcat 8.5 e TomEE 7.x no Eclipse? Quão?

informatik01
fonte

Respostas:

131

Você deve corrigir catalina.jar, pois este é o número da versão que o adaptador WTP procura. É uma verificação completamente inútil e o adaptador deve permitir que você inicie o servidor de qualquer maneira, mas ninguém pensou nisso ainda.

Durante anos e com todas as versões do Tomcat, isso é sempre um problema.

Para corrigir, você pode fazer o seguinte:

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

Certifique-se de que se parece com o seguinte (todos os números de versão precisam começar com 8.0):

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

Então:

  • jar uf ../catalina.jar org/apache/catalina/util/ServerInfo.properties
  • cd ..
  • rm -rf catalina
Dexter Meyers
fonte
5
No Tomcat 8.5.3, catalina.jar está na pasta lib.
Jon
38
+1. Para aqueles que usam o sistema operacional Windows, você pode fazer as alterações necessárias diretamente no arquivo JAR. Basta abrir o catalina.jar com o utilitário de arquivamento de arquivos (WinRar, WinZip, 7zip etc), navegar até o arquivo org \ apache \ catalina \ util \ ServerInfo.properties , fazer as alterações e salvá-las (confirme que deseja atualizar o arquivo )
informatik01
16
ATUALIZAÇÃO E você SÓ precisa alterar a versão na server.info=linha (como server.info = Apache Tomcat / 8.0.0 ), e server.number pode ser deixado como está. Por exemplo, eu tê-lo deixado intocado assim: server.number=8.5.4.0. Funciona sem problemas.
informatik01
7
-1: modificar o servidor para afirmar ser uma versão diferente é um pouco hackeado, quando claramente a coisa apropriada a fazer é modificar o eclipse para aceitar a versão real que foi feita e é descrita em outras respostas .
Periata Breatta
2
Depois de aplicar este hack, recebi "A versão desconhecida do Tomcat foi especificada." erro
Atmesh Mishra
41

Há um patch para Eclipse:
https://bugs.eclipse.org/bugs/attachment.cgi?id=262418&action=edit

Baixe este patch e coloque-o no diretório de plug - ins de sua instalação do Eclipse. Ele substituirá o padrão " org.eclipse.jst.server.tomcat.core_1.1.800.v201602282129.jar ".

NOTA
Depois de adicionar este patch, você deve escolher " Apache Tomcat v9.0 " ao adicionar um ambiente de tempo de execução de servidor no Eclipse ( Preferências> Servidor> Ambientes de tempo de execução ).
Ou seja, este patch permite que você selecione Tomcat versão 9.x ou Tomcat versão 8.5.x ao adicionar o ambiente de tempo de execução Apache Tomcat v.9.0.


Mais detalhes podem ser encontrados na página de relatório de bug relacionado: https://bugs.eclipse.org/bugs/show_bug.cgi?id=494936

FkJ
fonte
Observe que esta atualização agora parece estar incluída em distribuições recentes do Neon, então simplesmente escolher a opção Tomcat 9.x pode funcionar sem a necessidade de atualizar o plugin.
Periata Breatta
3
Não funcionou para a versão: Luna Service Release 2 (4.4.2), meus adaptadores Tomcat estão faltando após o patch
adranale
Estou usando a versão do eclipse Mars.2 (4.5.2) e apliquei este patch. Agora os adaptadores Tomcat existentes sumiram. Este é um patch maluco, estou revertendo agora.
mannedear
36

Para usuários do Tomcat 8.5.x

Você tem que mudar o ServerInfo.propertiesarquivo do arquivo do Tomcat /lib/catalina.jar.

ServerInfo.properties arquivo contém o seguinte código

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

Basta abrir o ServerInfo.propertiesarquivo abrindo o catalina.jarcom winrar da pasta lib do Tomcat

ServerInfo.propertiesa localização do arquivo catalina.jaré/org/apache/catalina/util/ServerInfo.properties

Aviso: shutdown o servidor Tomcat (se já estiver aberto por cmd) antes de fazer essas coisas, caso contrário, seu arquivo não muda e seu winrar mostra erro.

Em seguida, altere o seguinte código em 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 seu eclipse (se aberto). Agora vai funcionar ...

ScreenShot do eclipse

Vinoth Vino
fonte
Funciona no OS X também? Acabei de corrigir meu catalina.jar e ele não funciona (nada mudou após o patch). Minha versão do Eclipse é: Eclipse Java EE IDE para desenvolvedores da web. Versão: Mars.2 Release (4.5.2) ID de compilação: 20160218-0600
pidabrow
Claro que funcionará no OS X também. Inicialmente, fiz essas alterações apenas no meu Mac. Depois disso, planejei usar o Tomcat no Windows. Então eu simplesmente fiz e postei como resposta aqui. Experimente ... @piotrdab
Vinoth Vino
10

Por enquanto, o lançamento do serviço Eclipse Neon está  disponível . Então, se alguém ainda está tendo esse problema, vá para

Ajuda → Verificar atualizações

e instalar as atualizações fornecidas.

Criptor
fonte
Observe que você ainda precisa selecionar Apache Tomcat v9.0 na lista de tempos de execução do servidor, o que é um pouco contra-intuitivo, mas funciona.
Periata Breatta
1
Tenho Eclipse Java EE IDE para Web Developers versão Neon.1 Release (4.6.1) . Entre mais velhos vestions Tomcat Eu também tenho v8.0, v8.5e v9.0disponível em definir um novo servidor janela. Talvez a versão do Eclipse que você usa seja diferente.
Cryptor
3
Confirmo que Eclipse Neon.1 (4.6.1) adiciona um servidor Tomcat v8.5
Ortomala Lokni
Hmm .. Eu tenho 4.6.0 com WST atualizado por meio da ação sugerida e ainda não tenho Tomcat 8.5 na lista ... mas Tomcat 9.0 funciona. Bizarro.
Periata Breatta
Eclipse Neon.3 (4.6.3) também tem um servidor Tomcat v8.5
albciff de
4

Esta solução alternativa funcionou para mim. Eu editei a serverInfo.properties arquivo como dado abaixo:

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

Instale a versão mais recente do eclipse (). Teria a opção de adicionar o Tomcat 8.5.

Sandipan
fonte
2

Tive problemas semelhantes com o Eclipse Kepler v3.8. Eu tinha o tomcat v8.5.37 instalado. Eu não conseguia ver o Apache v8.5 como uma opção. Ao folhear StackOverflow descobri que o Apache v9.0 está disponível no Eclipse Neon. O legal é que você não precisa mudar sua versão do eclipse. Em seu Eclipse atual. Baixe o WTP (Web Tools Package) seguindo as etapas:

Etapa 1: Ajuda >>> Instale o novo software. Copie este link em Trabalhar com: http://download.eclipse.org/webtools/repository/neon

Etapa 2: selecionar adaptadores de servidor JST e extensões de adaptadores de servidor JST do primeiro pacote que você vê. Instale esses.

Etapa 3: Windows >>> Preferências >>> Servidor >>> Ambientes de tempo de execução >>> Adicionar ..

Você verá o Apache v9.0 lá! Funciona!

divyajyotiuk
fonte
Obrigado! Eu tinha acabado de (re) instalar o Eclipse 2019-03 no meu MacBook e o Tomcat é sempre o plugin mais difícil de encontrar. Usei download.eclipse.org/webtools/repository/2019-03
Thad
1

Vá para a versão de visualização do tomcat, por exemplo: tomcat 8.3 e copie o arquivo catalina.jar e cole no tomcat existente que você está enfrentando o problema

Sanjay
fonte
0

Perdoe-me por invocar o velho problema. Mas é como lendário, sempre acontece para novos usuários. A razão pela qual estou aqui é que quero propor uma resposta diferente. Bastante simples. para windows-> preferência-> Runtime Environment-> pesquise e selecione a pasta onde você baixa o servidor. Ele detectará automaticamente o servidor e você estará pronto para prosseguir.

parlad
fonte
0

Suponho que você esteja executando o Eclipse Mars, ou uma versão ainda anterior. Você precisa atualizar para Eclipse Neon ou posterior

Youssef El-kantri
fonte