2016-07-18 4 views
1

jnetpcapを使用するアプリケーションを作成しました。マルチプラットフォームで、32および64プラットフォームで動作する必要があります。私はmaven beforを使ったことがないので、jnetpcapのすべてのバージョンをプロジェクトに追加するにはどうすればいいですか?javenpcapを依存関係としてmavenプロジェクトに追加するには?

nar https://github.com/sugree/jnetpcapを使用するソリューションが見つかりましたが、正しく使用する方法がわかりません。

プロジェクトの構造をコピーしてそこにjnetpcapをコンパイルする必要がありますか?これはnar、依存性ではない場合、どのようにプロジェクトに追加するため、私はJavaクラスでjnetpcapを使用できますか?

PSまた、私はここからのconfを使用して依存関係としてjnetpcap追加しようとしています:https://www.versioneye.com/clojure/jnetpcap:jnetpcap/1.4.r1425-1d

私は私のpom.xmlにこのラインを追加しました:

<repositories> 
<repository> 
    <id>clojars</id> 
    <url>http://clojars.org/repo/</url> 
</repository> 

<dependency> 
<groupId>jnetpcap</groupId> 
<artifactId>jnetpcap</artifactId> 
<version>1.4.r1425-1d</version> 

エラーなしでコンパイルしますが、プロジェクトwを実行しようとするとi番目のコマンド: exec:java -Dexec.mainClass = "org.sample.Main"エラー: "java.library.pathのjnetpcapがありません"。

答えて

1

あなたのPOMファイルは正しいですが、jnetpcapはネイティブライブラリにランタイム依存関係があります。そのため、アプリケーションを実行しようとするとエラーが発生します。これを解決するには、起動時にネイティブライブラリを含むディレクトリを指定する必要があります。例えば

、Windows上でこれはこのようなものになります。あなたはまた、環境変数として、このディレクトリを含めることができ

java -Dexec.mainClass="org.sample.Main" -Djava.library.path=C:\jnetpcap-1.4.r1425 

- このについての詳細は、jnetpcap FAQを参照。

+0

これは私の場合は機能しません。 https://stackoverflow.com/questions/45220894/how-to-execute-maven-main-class-with-required-user-libraries/ – kit

+0

あなたの特定の用途にもっと詳しく答えを加えました場合。 –

関連する問題