私はEclipse RAP製品を持っています。私はTomcat内で使用するWebアプリケーションとしてエクスポートしたいと思います。このために私はwarproductエクスポータをEclipseで使用していますが、これまでは正常に動作していました。外部バンドルパスを使用したOSGiバンドルを使用したEclipse RAP warのエクスポート
これは、変数置換を使用する外部jarのセットを参照するため、製品内のOSGiバンドルのコンパイルに問題があります。これはMANIFEST.MF
から、次の断片に示されている:
Bundle-Name: ...
Bundle-SymbolicName: ...
Bundle-ClassPath2: external:/A/test1/jakarta-tomcat/shared/lib/a_base.jar
Bundle-ClassPath: external:$A_HOME$/jakarta-tomcat/shared/lib/a_base.jar
私が代わりに最初のクラスパスを使用し、所定の位置に正しい/A/test1/jakarta-tomcat/shared/lib/a_base.jar
を持っている場合は、すべてがコンパイル時に細かいです...そして、私も手動で変更することができますMANIFEST.MF
を置き換えて、正しいバージョンに置き換えます。
しかし、私は本当にこの余分なステップを避けたいと思います。
コンパイル時にA_HOME
の正しい値をどのように渡すのが問題だと思いますか?
(これはなぜですか?上記では、単一のjarファイルを表示しましたが、古いTomcatアプリケーションと新しいRAPベースのアプリケーションの間で共有するjarファイルの数が増えています。 OSGiフレームワークエクステンダやweb.xml
のextendedFrameworkExports
初期化パラメータを介してこの状況でjarファイルを共有する方法ですが、私たちはEMFを使用しているのでEMFメタデータをTomcatとEclipseの間で共有することはできません。クラスオブジェクト...)
/bugs/show_bug.cgi?id=372945 –