我们假设我们有一个简单的Java项目编译成simple.jar,其POM依赖于log4j.jar。当我打开simple-1.0.jar时,里面没有log4j.jar。然后我们将这个简单的1.0.jar上传到Nexus。
现在将这个simple-1.0.jar部署到目标服务器时,我们如何部署log4j.jar?
由于 冯吉荣
答案 0 :(得分:1)
您可以将依赖项与应用程序打包在一起(即创建一个uber-jar,WAR或EAR文件),也可以将依赖的jar部署到服务器上的某个位置,然后在运行时将该位置设置为类路径罐子。
使用Maven创建超级jar的一种方法是使用maven-shade-plugin
在这种情况下,您将创建一个" libs"目标计算机上某处的文件夹,并将所有相关的jar复制到此文件夹中。
然后,当您启动应用程序时,您将设置类路径,如下所示:
queryTokenizer
可以通过java -classpath /{libs directory} -jar simple-1.0.jar
分隔多个类路径条目来指定:
:
您可以使用依赖插件让Maven列出已解析的依赖项:
java -classpath /{directory1}:/{directory2} -jar simple-1.0.jar