java - Java 10 上的 JOGL(模块定义)
问题描述
我一直在尝试使用拼图模块在 Java 10 上使用项目库,但 JOGL 一直在我身上失败,我在网上找不到任何帮助。
请注意,整个项目在没有module-info.java文件的情况下可以正常编译和工作,并且我设法在两个不同的项目之间获得了工作模块链接(不是一切都被破坏了)。
JOGL 项目 (A) 具有以下 module-info.java 和 maven 依赖项。然后有另一个项目 (B) 使用 JOGL 项目,但无法访问任何 JOGL 类型(它们无论如何都不会导出)。项目 B 运行项目 A 的东西。项目 B 还不是模块化的。
模块信息文件:
module com.foo.bar {
...
requires jogl.all.main;
requires gluegen.rt.main;
}
Maven依赖:
<dependency>
<groupId>org.jogamp.gluegen</groupId>
<artifactId>gluegen-rt-main</artifactId>
<version>2.3.2</version>
</dependency>
<dependency>
<groupId>org.jogamp.jogl</groupId>
<artifactId>jogl-all-main</artifactId>
<version>2.3.2</version>
</dependency>
Eclipse 报告任何 jogl 导入:
import com.jogamp.opengl.GL4;
-> The import com.jogamp.opengl cannot be resolved
奇怪的是,maven 愉快地构建项目 A/B 没有错误,当我从命令行将项目 B 作为 jar 运行时,一切正常,没有额外的运行时错误。
这让我相信 maven build 可以很好地过渡(它甚至知道模块吗?),这里只有一个困惑的是 eclipse。
Java 构建路径中的 Eclipse 库:
使用:Eclipse Photon 4.8.0 (20180619-1200)、Maven 3.5.3(3.7.0 编译器插件)、Java JDK-10.0.1
解决方案
推荐阅读
- r - 由于更新了 sp 包,我通过调用 sp::CRS 定义收到警告
- android - Glide 加载图片很慢
- tensorflow - TensorFlow 的 ParameterServerStrategy 何时优于其 MultiWorkerMirroredStrategy?
- python - 检查整数是否为素数,如果不是则返回最小因子
- environment-variables - 区分 Octave 中的空环境变量和不存在的环境变量
- python - 在python中如何将字符串添加到列表中,以便它将作为值显示在数组中
- postgresql - 如何在 JMeter 中对具有不同 ID 的同一资源执行多个 HTTP DELETE 操作?
- python - 如何使用 python 在时间序列数据中创建 3 个月的存储桶
- javascript - 如何在 JavaScript 数组中分组、计算总和并获取平均值?
- nginx - 我想知道gce实例组的正确用法