我一直在尝试install this Git repository 。我尝试按照说明进行操作,并成功 mvn clean package install
并且在/target 下现在有 4 个 jar 文件。然而,在安装说明中它说
you'll need the fat jar (glove*-shaded.jar) in the next sections.
这个 jar 应该在执行 mvn package
后显示,但是,它不在那里。据我了解,一个 fat jar 子只能容纳几个不同的 jar ?我猜测'shaded'部分来自maven的shaded插件?
最佳答案
阴影插件将用阴影 Artifact 替换现有 Artifact 。对于这个项目,我在这里看到这条消息:
[INFO] Replacing original artifact with shaded artifact.
[INFO] Replacing /Users/pcsanwald/Code/glove/target/glove-0.1-SNAPSHOT.jar with /Users/pcsanwald/Code/glove/target/glove-0.1-SNAPSHOT-shaded.jar
glove*-shaded.jar 文件随后被删除,因此它不会出现在您的目录中。您正在寻找的 jar 将是:
target/glove-0.1-SNAPSHOT.jar
这是一个有阴影的 jar ,有时称为“ fat jar 子”。 Fat jar 包含所有依赖项,因此不需要在运行时在类路径上添加额外的依赖项。您可以通过执行以下操作来验证您的 jar 是否包含其所有依赖项
jar -tvf target/glove-0.1-SNAPSHOT.jar
关于java - MVN 没有创建带有阴影的 Fat Jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31663401/