maven構建可執行jar包
阿新 • • 發佈:2018-11-13
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow
也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!
一 將maven構建的工程打成jar包,並使用指令碼做定時任務1.首先將maven搭建的工程打成jar
需要在將該工程所支援的類庫打在一個包中(預設情況下,maven在做mvn pakage時,只是將專案編譯打包到一個jar中,其他的類庫則需要引用才行)。
在pom.xml中加入以下外掛
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>cn.vsp.TestMain</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>assembly</goal>
</goals>
</execution>
</executions>
</plugin>
上述程式碼中在<mainClass></mainClass>之間是填寫程式的入口類,即含main方法的類
2.編輯完上述外掛後,再執行
mvn assembly:assembly
這是就會在target目錄下生成 *.jar 檔案
3.執行jar檔案
java -jar *.jar
4.做定時任務
如果是在linux系統中做定時任務:
第一種方式:可以寫一個shell指令碼直接執行該jar檔案,shell指令碼的編寫可以參考我的linux svn完全備份和定時備份博文
第二種方式:
sudo crontab -l
*/1 * * * * * sudo /usr/bin/java -jar *.jar
上述程式碼為每分鐘執行一次,路徑修改為相應的路徑。
二 maven使用制定的java版本,來編譯
可以避免“不支援泛型,請使用 -source 5 或更高版本以啟用泛型)” 這種問題
在專案的pom.xml中,新增:
<build>
<plu