問題タブ [maven-nar-plugin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
maven - maven-nar-plugin の使用中にエラーが発生しました
maven-nar-plugin を使用して、maven を使用してネイティブの「C」プロジェクトを構築しようとしています。次のエラーが表示されます。
以下は、私の pom ファイルの関連セクションです。
より詳しい情報:
- Maven バージョン 3.0.5 を使用しています
- セントラル リポジトリ
maven-nar-plugin
にも が表示されません - @ http://duns.github.io/maven-snapshots/で利用できるようです。Maven にここを見るように指示する方法がわかりません。デフォルトでは (2) を調べています。
java - maven-nar-plugin と依存モジュールのテスト
私は2つのmavenモジュールを持っています:
- native-wrapper - nar-maven-plugin によってビルドされたシステム lib の JNI ラッパーです。
- main-module - native-wrapper に依存し、テスト中にその JNI 呼び出しを使用します。
ネイティブ ラッパーでのテストは問題なく動作します。しかし、main-module でのテスト中に、「UnsatisfiedLinkError」が発生します - NarSystem が JNI ライブラリを見つけられません。
native-wrapper の pom には以下が含まれます。
生成された .nar を ./target/ で開きました - 「/lib/amd64-Linux-gpp/jni/libnative-wrapper-0.1.0-SNAPSHOT.so」が含まれています。他の nar (Java クラスを含む) には、「/META-INF/nar/some.native.wrapper/native-wrapper/nar.properties」が含まれています。
メインモジュールの pom:
main-module の pom から nar-maven-plugin プラグインを削除すると、maven はネイティブ ラッパー モジュールからクラスを検出しません。
nar に lib を見つけさせるにはどうすればよいですか?
c - nar maven プラグインを使用して dylib の代わりに作成する
私は今、Mac上でpljavaを構築しています。pljava はビルドに maven と maven nar プラグインを使用します。この maven nar ビルドは現在、.so ではなく dylib を作成しています。postgres は代わりに .so を必要としているようです。これは、postgres トレースをオンにした場合の出力です。
だから私の質問は - どうすれば.dylibの代わりに.soファイルをmaven narに出力させることができますか? タイプ「shared」を使用するとdylibが作成され、タイプ「plugin」を使用すると.bundleが作成され、タイプ「static」を使用するとリンクが失敗します。
maven - Maven 添付ファイルを個別に公開する
複数のプラットフォーム (Mac および Windows) で NAR を構築しています。ビルドは複雑で、Maven NAR プラグイン自体を介して実行することはできませんが、nar ファイルを自分でビルドし、mvn
デプロイ用のコマンドライン ツールを使用しています。
展開を行う一般的な方法は、一発です。
ただし、ビルドは異なるボックスで実行されているため、公開手順を一度に行うことはできません。理想的には、ビルドが終了したときに、添付ファイルをプライマリ アーティファクトに「追加」できるようにしたいと考えています。すなわち、
これを 1 回実行します。
次に、Mac ビルド スレーブで次のようにします。
次に、Windows ビルド スレーブで:
もちろん、最初のコマンドは問題なく動作します。しかし、2 つのビルド スレーブ コマンドは失敗します。
プライマリ アーティファクトが必要であると考えているためです。
完全に新しいものを作成するのではなく、パブリケーションに追加していることをどのように指定できますか?
c++ - Maven NAR プラグインを使用した ARM のクロスコンパイル
Debian/Ubuntu で Maven NAR プラグインを使用して、x86/amd64 と ARM の両方に対応する C++ アプリケーションを構築しようとしています。arm-linux-gnueabi-gcc を使用して ARM クロスコンパイル ビルド用の正しいプロファイルを設定するのに苦労しました。
私の pom.xml からのプロファイル スニペットは次のようになります。
「mvn compile -P arm-linux-cross」を使用してそのプロファイルを構築しても機能しません:
明らかに、ここで使用されている AOL は利用できないため、Maven はコンパイラ/リンカーを認識しません。しかし、必要な AOL を追加するにはどうすればよいでしょうか? または、ARM と Maven をクロスコンパイルする別の方法はありますか?
java - nar-maven-plugin - amd64 linux での arm linux 用の JNI のクロスコンパイル
JNI NAR プロジェクトをクロスコンパイルして Linux を起動します。このリンクで、Jenkins の助けを借りてネイティブ システムでコンパイルするための推奨事項を読みました。しかし、Linux とアーキテクチャー arm、x86、AMD64 用にコンパイルするだけで済みます。この場合、Jenkis の使用は多くのオーバーヘッドです (私の意見です)。今日、nar プラグインを使用して Linux AMD64 マシンで私のケースをクロスコンパイルすることは可能ですか? 答えが「はい」の場合、ポンポンの例はありますか?
よろしくお願いします
maven - マルチモジュール Maven プロジェクトの Nar 依存関係
nar jni ライブラリをビルドする予定のモジュールと、そのライブラリに依存する jar パッケージ モジュールで構成されるマルチ モジュール maven プロジェクトをセットアップしました。
nar ライブラリをローカルの Maven リポジトリにインストールできますが、依存モジュールでは使用できません。
たとえば、実行するmvn nar:nar-unpack
と次のようになります。
nar 依存関係はないようですが、これは明らかに正しくありません。さらに、jni ライブラリを使用するクラスの main メソッドを実行しようとすると失敗します。
プロジェクトの構造は次のようになります。
親 pom.xml は次のとおりです。
nar-library モジュール pom.xml:
nar 依存の pom.xml
最後に、それが実際に HelloWorld プロジェクトであることの証明として、ライブラリ クラス:
およびクライアント アプリ:
https://maven-nar.github.io/examples.htmlを参照しましたが成功しませんでした。何が問題なのかわかりません。
何か案は?これが project の zipです。