在将具有jar依赖项的模块打包到archive-jar中时,出现NoClassDefFoundError

时间:2019-03-24 00:02:09

标签: java jar dependencies noclassdeffounderror

我正在尝试创建一个实用工具jar,以后可以将其添加到其他项目中,以节省一些时间,而一遍又一遍地做许多相同的事情。

这是我的项目结构:

com.joul
--src
---- some.package
------ClassImportingJOML.java
--module-info.java
---> toPrefixBlocks("2001:db8:abcd:0012:1::","2001:db8:abcd:0012:3::"); ;

exampleProject
--lib
---- joul.jar

-src
---- main
------Main.java
-------> starting with range 2001:db8:abcd:12:1:: -> 2001:db8:abcd:12:3:: prefix blocks are [2001:db8:abcd:12:1::/80, 2001:db8:abcd:12:2::/80, 2001:db8:abcd:12:3::/128]

我偶然发现了各个模块并创建了自己的模块。我使用requires org.joml模块并将其标记为我的ClassImportingJOML c = new ClassImportingJOML();文件中的依赖项。但是,当我将此模块打包到一个jar文件中并将其添加到另一个项目的模块路径中并运行代码时;我收到了相同的错误:org.joml引起的module-info.java

这仅在我实例化导入该模块的类时发生。在该类而不是其他地方抛出异常。如果有人知道如何创建一个jar,使得NoClassDefFoundError不必将org.joml添加到其依赖项中,请告诉我,谢谢!

0 个答案:

没有答案