我们如何部署二进制依赖项?

时间:2015-12-02 19:24:51

标签: java maven binary pom.xml nexus

我们假设我们有一个简单的Java项目编译成simple.jar,其POM依赖于log4j.jar。当我打开simple-1.0.jar时,里面没有log4j.jar。然后我们将这个简单的1.0.jar上传到Nexus。

现在将这个simple-1.0.jar部署到目标服务器时,我们如何部署log4j.jar?

由于 冯吉荣

1 个答案:

答案 0 :(得分:1)

您可以将依赖项与应用程序打包在一起(即创建一个uber-jar,WAR或EAR文件),也可以将依赖的jar部署到服务器上的某个位置,然后在运行时将该位置设置为类路径罐子。

将应用程序打包为Uber-JAR

使用Maven创建超级jar的一种方法是使用maven-shade-plugin

部署从属jar并设置classpath

在这种情况下,您将创建一个" libs"目标计算机上某处的文件夹,并将所有相关的jar复制到此文件夹中。

然后,当您启动应用程序时,您将设置类路径,如下所示:

queryTokenizer

可以通过java -classpath /{libs directory} -jar simple-1.0.jar 分隔多个类路径条目来指定:

:

您可以使用依赖插件让Maven列出已解析的依赖项:

java -classpath /{directory1}:/{directory2} -jar simple-1.0.jar