maven-narプラグインを使用してビルドおよびパッケージ化されたネイティブ共有ライブラリがあります。これはうまく動作し、Linux/MacOSX/Windows上に構築されます。また、共有ライブラリをラップする、maven-narを使って構築されたJNIライブラリも定義しました。どちらもNAR成果物として生成され、使用するにはmaven-narプラグインが必要です。WebアプリケーションでネイティブのMavenアーティファクト(nar)を使用する
NARパッケージ化されていないプロジェクトからこれらのNARに依存関係を宣言するときに問題が発生します。 maven-narプラグインが呼び出されることはありません。私がプロジェクトのパッケージをNARに変更したときだけ、maven-narプラグインが起動します。これは、NARパッケージが感染する必要があるように見えます.NAR依存関係が存在する場合、すべての上流プロジェクトをNARパッケージ化する必要があります。これは正しいのですか、何か不足していますか?
maven-narプラグインを使用して生成されたネイティブ共有ライブラリおよびJNI成果物を、WARなどのWebアプリケーションで正常に使用できますか?それらがWARで使用され展開されていれば、どうやって行えますか?それ以外の場合は、アプリケーションサーバー上のjava.library.path内のある場所にネイティブライブラリを手動で配置する唯一のオプションですか?少なくとも
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>thegroup</groupId>
<artifactId>theparent</artifactId>
<version>1.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>thedependant</artifactId>
<packaging>jar</packaging>
<name>A nice name</name>
...
<properties>
<skipTests>true</skipTests>
</properties>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-nar-plugin</artifactId>
<version>2.1-SNAPSHOT</version>
</plugin>
</plugins>
</build>
...
<dependencies>
<dependency>
<groupId>thegoup</groupId>
<artifactId>theJNI</artifactId>
<version>1.0-SNAPSHOT</version>
<type>nar</type>
</dependency>
</dependencies>
...
</project>
関連するポッドスニペットを投稿できますか?ネイティブライブラリを 'war'型プロジェクトの依存として宣言することが可能でなければなりません – Raghuram