使用 Maven 管理 DLL 依赖项

2022-09-01 09:01:43

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

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


答案 1

您是否尝试过类似如下的方法:

<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 执行此操作,但类似这样的东西应该可以正常工作。


答案 2

我找到了另一个解决方案,在这个问题的答案中进行了描述:将maven与来自第三方的DLL一起使用并管理DLL的名称

基本上,如果您将 DLL 放入 ZIP 文件中,并将其作为单独的依赖项进行管理,然后使用 ,则 DLL 将使用正确的名称解压缩。nativedependencies-maven-plugin


推荐