EclipseのTomcat設定でバージョン8.5.x系を追加できない時に試す方法

EclipseでTomcatの設定を行う場合、ServerのRuntimeを追加しますが、その際に、以下のようなエラーで追加できないことがあります。

The Apache Tomcat installation at this directory is version 8.5.4.

A Tomcat 8.0 installation is expected.

直訳すると、「このディレクトリにインストールされているTomcatはバージョン8.5.4ですよ。Tomcat8.0がインストールされているべきなんだけどな。。」という感じのエラーです。

この記事では、バージョン8.5系のTomcatを追加出来るうようにするための方法をご紹介します。

どうして追加できないか

Eclipseが、設定の追加時に、Tomcatの解凍したディレクトリ配下の「${CATALINA_HOME}/lib/catalina.jar」に含まれる「 ServerInfo.properties」の中の値を見て判断しているためです。

このファイルの中に、

server.info=Apache Tomcat/8.5.3 server.number=8.5.3.0 server.built=Jun 9 2016 11:16:29 UTC

といった記述があり、これが8.0でないために、追加できません。

そのため、この「catalina.jar」の拡張子を「catalina.zip」のように変更し、解凍した上で、「ServerInfo.properties」の記述を

server.info=Apache Tomcat/8.0.8.5.3 server.number=8.5.3.0 server.built=Jun 9 2016 11:16:29 UTC

のように変更して、再度「catalina.jar」に固めると、追加できるようになります。

とはいえ、バージョンを偽るということなので、少し気持ち悪いですね。。

Eclipseにパッチをあてる

Eclipseからパッチが出ています。このページのパッチをダウンロードします。

ダウンロードしたファイルは、「org.eclipse.jst.server.tomcat.core_1.1.800.v201602282129.jar」という名前ですので、これを、Eclipseをインストールしたディレクトリの「plugin」ディレクトリに含まれる同名のファイルと差し替えます。(実際には、元のファイルは名称を変えて、保管しておいた方がいいでしょう。)

Eclipseを再起動すれば、”Apache Tomcat v9.0″の方で追加ができるようになっているはずです。