0

私はEclipseRAP製品を持っていますが、Tomcat内で使用するためのWebアプリとしてエクスポートするのが好きです。このために、私はEclipseのwarproductエクスポーターを使用します。これはこれまで正常に機能していました。

製品内のOSGiバンドルの1つをコンパイルする際に問題が発生します。これは、変数置換を使用する外部jarのセットを参照しているためです。これは、次のフラグメントに示されています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ファイルの数が多くなっています。jarを共有する方法は他にもあります。この状況では(たとえば、OSGiフレームワークエクステンダーまたはのextendedFrameworkExports初期化パラメーターを介して)、 web.xmlEMFを使用するため、選択したメソッドが必要であるため、TomcatとEclipseの間でEMFメタデータを共有できません...したがって、クラスオブジェクトではありません... )。

4

1 に答える 1

2

この機能は現在、WAR製品ツールではサポートされていません。Eclipse Libraに対してバグを開き、機能要求を定義することをお勧めします。とにかく、tychoを使用してRAPアプリケーションを構築する方法の例を作成しました。これは非常に簡単です。https ://github.com/eclipsesource/rap-mobile-demosをご覧ください。

乾杯ホルガー

于 2012-02-29T08:48:16.113 に答える