【发布时间】:2018-09-05 11:35:16
【问题描述】:
我有两个针对 java 10 的 maven 项目:
项目A依赖项目B:
我已经为项目 A 创建了运行配置,它按预期工作。现在,我想从这个运行配置中创建可运行的 jar,
...但是 .jar 文件不包含来自项目 B 的 .class 文件:
所以当我尝试运行这个 .jar 时,它会抛出:
Exception in thread "main" java.lang.NoClassDefFoundError: b/B
at a.A.main(A.java:7)
Caused by: java.lang.ClassNotFoundException: b.B
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
... 1 more
我该如何解决这个问题? 我已经在新下载的 Eclipse Photon (4.8.0) 上对其进行了测试
【问题讨论】:
-
当您使用 maven 项目时,您应该查看maven assembly plugin。您可以使用 maven 自动构建一个包含所有依赖项的 jar。
-
@TA 我知道我可以使用 maven,但在这里我问的是 eclipse 导出。