2009-06-16 214 views
29

我有一个Java程序,Maven管理它的依赖关系。其中一个依赖项是另一个程序的JNI包装器。 Maven负责处理相关JAR文件的引用,但我自己将这个DLL文件搞乱了。使用Maven管理DLL依赖关系

有没有一种让Maven处理DLL的好方法?理想情况下,我想将DLL加载到我们的本地存储库中,如JAR文件。

回答

32

您是否尝试过这样的事情:

<dependency> 
    <groupId>com.foo</groupId> 
    <artifactId>footron</artifactId> 
    <version>4.2</version> 
    <scope>runtime</scope> 
    <type>dll</type> 
</dependency> 

你可以像这样把它们添加到Maven的仓库:

mvn install:install-file -Dfile=footron.dll -DgroupId=com.foo -DartifactId=footron -Dversion=4.2 -Dpackaging=dll -DgeneratePom=true 

还没有这样做的DLL,但是这样的事情应该工作。

+0

实际上,花了一些额外的时间思考之后,我决定通过JNI来消除对DLL的需求,这是值得投入的。从长远来看,可能值得付出努力。尽管出于好奇,我会研究你的建议。 – Kris 2009-06-20 14:07:18