【iDempiere Lab】久しぶりにiDempiere5.1をビルドする

 久しぶりにiDempiere5.1をビルドしたら、いくつか思いがけないエラーに遭遇したので、その対応方法について、調査及び研究し、その成果をまとめています。

Eclipse上でサーバーを起動する時のエラー

Eclipseの「実行構成」もしくは「デバッグの構成」からiDempiereを起動すると、下記のエラーに遭遇しました。

org.mortbay.jasper.apache-jspのバージョン問題

◆エラー内容

  • org.eclipse.jetty.apache-jsp
    • 制約がありません: インポート・パッケージ: org.apache.jasper.servlet; version="[8.5.9,9.0.0)"
    • 制約がありません: インポート・パッケージ: org.apache.juli.logging;  version="[8.5.9,9.0.0)"
  • org.mortbay.jasper.apache-jsp
    • 制約がありません: インポート・パッケージ: org.servlet; version="4.0.0"
    • 制約がありません: インポート・パッケージ: org.servlet.annotation; version="4.0.0"
    • 制約がありません: インポート・パッケージ: org.servlet.descriptor; version="4.0.0"
    • 制約がありません: インポート・パッケージ: org.servlet.http; version="4.0.0"
    • 制約がありません: インポート・パッケージ: org.servlet.resources; version="4.0.0"

◆エラー原因

これは、ダウンロードしてくるorg.mortbay.jasper.apache-jspが、新しいバージョンになっているためで、古いバージョンを使用する必要があります。

adempiere.rmap
adempiere.rmap

2020年1月現在では、バージョン9.0.29のjarがダウンロードされてきます。

これを、バージョン8.5.24のjarファイルに変更すると、エラーが解消されました。

◆エラーの解消方法

Buckminsterでダウンロードされた各種jarファイルは、%ワークスペース%targetPlatform -> pluginsの中にありますので、古いバージョンのorg.mortbay.jasper.apache-jspのjarファイルに置き換えて下さい。

org.mortbay.jasper.apache-jspのjarファイルがあるMavenリポジトリ

iDempiere5.1の場合は、8.5.24のバージョンであれば、問題なくビルドできるでしょう!!

 apache-jsp-8.5.24.jarファイルがダウンロードされますので、「org.mortbay.jasper.apache-jsp_8.5.24.jar」にリネームして%ワークスペース%targetPlatform -> pluginsのフォルダの中に入れます。

 Eclipseを再起動して、クリーン&ビルドを実行すれば、問題なくサーバーの起動ができるようになっているのではないかと思います。

その他

ほかにも、下記に関連するエラーが出る事があるかもしれません。