打包發佈java
打包前確保項目在IDEA上能正常運行linux
Project Structuremaven
快捷鍵 ctrl + shift + alt + s 或點擊左上角 File —> Project Structureide
Artifactsui
Project Settings —> Artifacts 設置以下圖:idea
Select Main Class.net
New Directoryblog
新建文件夾,用於將項目依賴的jar包放置在文件夾中,便於管理。it
最後效果以下圖:將依賴的jar包拖入library時,有個小技巧是從最下面選中jar包,按住shift鍵,選中全部jar包,不要鬆開,將全部jar包拖入library文件夾中編譯
Build
idea菜單欄—>Build—>Build Artifacts
若是第一次編譯,選擇build,第二次編譯選擇rebuild
out
項目打包後最終效果。
Linux發佈項目
啓動jar包命令:
java -jar xxx.jar
1
這種方式,只要控制檯關閉,服務就不能訪問了。下面咱們使用在後臺運行的方式來啓動:(僅限linux環境)
nohup java -jar xxx.jar &
1
nohup 意思是不掛斷運行命令,當帳戶退出或終端關閉時,程序仍然運行
當用 nohup 命令執行做業時,缺省狀況下該做業的全部輸出被重定向到nohup.out的文件中,除非另外指定了輸出文件。
可經過 jobs 命令查看後臺運行任務
將nohup文件指定到temp.txt
nohup java -jar xxx.jar >temp.txt &
1
總結:
打包時報錯:
項目中已存在MANIFEST.MF文件,將META-INF文件夾刪除便可。
利與弊
與maven打包SpringBoot項目相比,該方法操做性稍微多一點,maven主要是依賴配置文件進行打包,邏輯性強一點,之後也會嘗試用maven來打包,並進行深度對比。
————————————————
版權聲明:本文爲CSDN博主「小天努力學java」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處連接及本聲明。
原文連接:https://blog.csdn.net/tian330726/article/details/88826324