使用maven打包有两种情况:不包括第三方jar包、包括第三方jar包
一般我们写程序,都会在IDEA上去调试,那么也就意味着,你需要将你所需要的jar包(第三方jar)全部给pom文件,否则是不能工作的。打成jar包后,提交到集群上去运行时,如果你的集群什么包都有,自然是很爽,但是如果你的集群不给你提供第三方jar包,那么你就需要让你的jar包在打包的时候把第三方jar也包括进去。这样在集跑的时候,就不怕找不到Class了
在工作中,由于在打包的时候遇到很多问题,搞了一天,于是特在此写下我打包的过程,以防止以后忘记。。。。。。
1.不包括第三方jar包
这种很简单,只需轻轻一点package和上面的绿色运行按钮,就行啦
然后,它会在target目录生成你所需要的jar
2.包括第三方jar包
这种其实也很简单,但是呢,由于我的无知,搞了一天,真是内心受打击啊。。。。。。。
在你的pom文件里面添上小小的一段代码即可,如下所示:
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>test07.TestSaveDataToS3Time</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>assembly</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
然后,重复第一种情况的方法,点击package,就可以啦
不过上面的代码,需要注意这一段
<mainClass>test07.TestSaveDataToS3Time</mainClass>
这里面写的是你程序运行入口,所以写自己的。。。。。。