2015-10-29 2 views
6

この性質のもう1つの質問hereがあるようですが、 。私はいくつかのネイティブC++コードの最新バージョンを含むOSGiフラグメントを開発するために私のIDEとしてSpring Tool Suite(基本的にKepler 4.3.2 SR2)を使用しています。このフラグメントは、このネイティブコードと統合しようとする異なる環境に存在する異なるバージョンのソフトウェアの可能性を可能にするために存在します。カスタムvm argを使用してEclipseでOSGiフラグメントをエクスポートしようとすると「Unsatisfied native code filter」というエラーが発生する

私はこのバージョン番号を表すために使用するカスタムのvm引数のため、このフラグメントをエクスポートできません。フィーチャーorg.eclipse.pde.container.featureから

処理を含める:

Manifest-Version: 1.0 
Bundle-ManifestVersion: 2 
Bundle-Name: Windows 64-bit support for Third-Party XYZ 4.12.7 
Bundle-SymbolicName: com.ourcompany.oursoftwarepackage.xyz.win64xyz4127 
Bundle-Version: 8.6.2.qualifier 
Bundle-Vendor: OurCompany 
Fragment-Host: com.ourcompany.oursoftwarepackage.xyz 
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 
Eclipse-PlatformFilter: (& (osgi.os=win32) (osgi.arch=x86_64)) 
Bundle-NativeCode: xyzintegration.dll; selection-filter = "(oursoftwarepackage.xyzVersion=4.12.7)" 
Bundle-ClassPath: . 

エラーは言う: バンドル com.ourcompany.oursoftwarepackage

マニフェストは、次のようになります.xyz.win64xyz4127_8.6.2.qualifier 解決に失敗しました。:不満足なネイティブコードフィルター: xyzintegration.dll; 選択フィルタ= "(oursoftwarepackage.xyzVersion = 4.12.7)"。

選択フィルタ節を削除すると、エクスポートされたように見えますが、実際のアーティファクトは生成されません。

Iは、上記のリンクから推定提案は、プラグイン開発ターゲット環境でvmarg

-Doursoftwarepackage.xyzVersion=4.12.7 

を含むことでした。しかし、それはOSGiフレームワークを満足させるようには見えなかった。今、私は、エクスポートを進めるためにフラグメントを解決する方法を失っています。

+0

VM引数セクションに値を挿入環境。どういう意味ですか?アプリケーションの起動時にこのvmargを使用していますか? –

+0

ターゲット環境には、vmargsの設定があります。カスタムargをそこに追加しました。 –

答えて

0

ターゲット定義エディタのターゲット環境設定についてお話したとします。少なくともそれは私がそのような設定について知っている唯一の場所です。しかしそれはあなたが開発しようとしている目標の定義です。ランタイムは指定されていません。

実行コンフィギュレーションでVMパラメータを設定する必要があります。

実行 - >実行構成... - >起動するアプリケーションを選択 - > [引数]タブに切り替えが - >あなたはあなたのPDEターゲットにvmargを追加したことを言う

関連する問題