この性質のもう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フレームワークを満足させるようには見えなかった。今、私は、エクスポートを進めるためにフラグメントを解決する方法を失っています。
VM引数セクションに値を挿入環境。どういう意味ですか?アプリケーションの起動時にこのvmargを使用していますか? –
ターゲット環境には、vmargsの設定があります。カスタムargをそこに追加しました。 –