2011-08-01 19 views
6

私はスイングベースのデスクトップアプリケーションを開発しており、このアプリケーションはMediaInfo.dllライブラリを使用しています。私はまずthis answerのように私のローカルリポジトリにこのdllをインストールしました。それから私は、このMavenのDLL依存関係の問題

<dependency> 
    <groupId>com.mediainfo</groupId> 
    <artifactId>mediainfo</artifactId> 
    <version>0.7.44</version>  
    <type>dll</type>  
</dependency> 

私はMavenの3.0.3バージョンを使用していますが、私は、実行時にMVNは、アセンブリをインストールするように私のpom.xmlに依存関係を追加しました:アセンブリには無い、

PlexusIoResourceCollectionが見つからないと言いますarchieverがdllで見つかりました

私はmavenには新しいので、私は聞き取りをする前に助けを探しています。

+1

x86またはx64のタイプの前にクラシファイアタグを追加してみてください。したがって、32ビット環境の場合は、タイプタグの前に x86を追加してください。それが動作する場合、私は以下の答えを投稿します。 – Perception

+0

いいえ私は試しましたが、うまくいきません – mcaaltuntas

+0

いいえ、これより前に応答がない場合、仕事の後でもっと調べてみましょう。 – Perception

答えて

4

これはアセンブリのディスクリプタによって異なりますが、<dependencySet>があり、<unpack>true</unpack>が指定されているようですが、DLLをセットから除外しません。そのdependencySet要素にこれを追加してみてください:

<excludes> 
    <exclude>*:dll*</exclude> 
</excludes> 

あなたがそれらを開梱せずにDLLの依存関係を組み込む予定の場合は、あなたがそれらを含んでおり、unpackフラグを指定していない追加のdependencySet要素が必要になる場合があります。詳細については、http://maven.apache.org/plugins/maven-assembly-plugin/assembly.html#class_dependencySetを参照してください。

+0

まだMavenに慣れていない人にとっては、XMLに属している場所を「除外」しているコンテキストにいくつかのコンテキストを与えることは可能でしょうか?親要素は何ですか? dependencySetの親は何ですか?ポストにはこの設定が可能な最小限のポームがありますか? –