如何从具有所有依赖项的Eclipse中导出可运行的JAR文件?

时间:2018-09-05 11:35:16

标签: java eclipse

我有两个针对Java 10的Maven项目:

project structure

项目A取决于项目B:

build path for A

build path for A - order

我已经为项目A创建了运行配置,该配置可以按预期工作。现在,我想从此运行配置中创建可运行的jar,

runnable jar config

...但是.jar文件不包含项目B中的.class文件:

.jar content

因此,当我尝试运行此.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)上对其进行了测试

1 个答案:

答案 0 :(得分:0)

好的,我找到了答案。我还必须将依赖项目(B)添加到Maven依赖项:

<dependencies>
  <dependency>
    <groupId>B</groupId>
    <artifactId>B</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </dependency>
</dependencies>

我相信在以前的Eclipse版本中并不需要。