gpt4 book ai didi

java - 是否可以在 Linux 下构建 JNI .dll?

转载 作者:太空宇宙 更新时间:2023-11-04 09:37:00 25 4
gpt4 key购买 nike

我正在使用 nar-maven-plugin 3.0.0我的 pom 类似于以下内容:

<packaging>nar</packaging>

<build>
<plugins>
<plugin>
<groupId>com.github.maven-nar</groupId>
<artifactId>nar-maven-plugin</artifactId>
<version>3.0.0</version>
<extensions>true</extensions>
<configuration>
<libraries>
<library>
<type>jni</type>
</library>
</libraries>
</configuration>
</plugin>
</plugins>
</build>

而且它确实有效。在我的 Linux 下,它会自动找到 gcc 并使用它来构建所有内容并将其打包到 nar 中。然而,这是 .so 文件。

我的问题是:是否有可能以某种方式配置它以在带有 .so 的 nar 旁边创建带有 .dll 的在 Linux 下 nar?并且通常生成 JNI nars,以适应不同的架构?

如果可能,请提供一些配置片段、链接或任何可以给我一些线索的东西。

最佳答案

  1. 将 Windows JDK 复制到 Linux 上。否则,您将不需要 header 和 implib。如果你看,你会看到有两个 JNI 头文件;一种是按平台。当然,您需要一个 implib 来链接您的 DLL,以便它可以连接到 JVM。
  2. 获取https://fedoraproject.org/wiki/MinGW?rd=SIGs/MinGW ,一个交叉编译环境。
  3. 教 NAR 插件关于 (2)。这可能需要阅读 NAR 插件的源代码。
  4. 遗憾的是您仍然需要一个 Windows 机器来测试结果

那么你确定要这样做吗?我非常怀疑您会发现这是一种常见的、受支持的实践,因为我们大多数人都想测试我们构建的东西。由于您需要实际的 Windows 进行测试,因此您不妨在那里构建。

关于java - 是否可以在 Linux 下构建 JNI .dll?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25614139/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com