我有一个项目,包含Maven和Java11,它们使用了一个用Java8编写的外部库。只要将库导入为Jar文件,它就可以正常工作。我使用的是IntelliJ,但我也在寻找对Eclipse有效的答案。
我还从GitHub克隆了外部存储库,并希望在我的项目中以源代码的形式使用它。一个目标是对外部库进行改进,并能够向GitHub发送拉取请求。但首先,我希望从我的项目到库的调用可以在不改变库源代码的情况下工作。
但是,我的项目中从外部库导入类的类不能做到这一点。
在pom.xml中,我尝试过
<modules>
<module>../path/to/external-libary</module>
</modules>它似乎有一些效果,但导入仍然不起作用。
当库用作Jar时,此依赖项起作用:
<dependency>
<groupId>com.github.goxr3plus</groupId>
<artifactId>java-stream-player</artifactId>
<version>10.0.0</version>
</dependency>我怀疑我必须在模块-info.java或pom.xml中做一些事情,但是我不知道是什么。
发布于 2020-05-09 18:00:16
如果外部库应该被视为自动模块要求(通过模块信息中的‘’引用,而不是在类路径上拉入),那么依赖项必须指向jar文件,因为自动模块只为jar文件定义。
Eclipse还将模块路径上的项目识别为自动模块,这在启动时仍然需要额外的步骤,因为Java运行时不会接受类文件的文件夹作为自动模块。
https://stackoverflow.com/questions/61687136
复制相似问题