本文目的
純屬記錄,以備后查。
1.安裝JAVA JDK
安裝jdk略。
配置JDK,打開/etc/profile文件,在最后添加如下代碼:
JAVA_HOME=/usr/java/jdk1.8.0_211 JRE_HOME=/usr/java/jdk1.8.0_211/jre CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin export JAVA_HOME JRE_HOME CLASS_PATH PATH
然后運行命令,刷新配置:
source /etc/profile
2.安裝tomcat【不是必須】
在usr/local/目錄下,添加新目錄tomcat,然后進入目錄,獲取tomcat:
wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.20/bin/apache-tomcat-9.0.20.tar.gz
解壓壓縮包
tar -zxvf apache-tomcat-9.0.20.tar.gz
然后在安裝目錄下的bin文件夾,新建文件:setenv.sh,其內容如下:
# 在tomcat目錄下面的bin目錄下面創建setenv.sh文件, # 因為catalina.sh在執行的時候會調用同級路徑下的setenv.sh來設置額外的環境變量。 export CATALINA_HOME=/usr/local/tomcat/apache-tomcat-9.0.20 export CATALINA_BASE=/usr/local/tomcat/apache-tomcat-9.0.20 #add tomcat pid CATALINA_PID="$CATALINA_BASE/temp/tomcat.pid" #add java opts JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"
在/usr/lib/systemd/system目錄下,建立新文件tomcat.service,其內容如下:Java_home格式配置在:tomcat/bin/catalina.bat,文件首行
export JAVA_HOME=/usr/java/jdk1.8.0_211/
export JRE_HOME=/usr/java/jdk1.8.0_211/jre
在/usr/lib/systemd/system路徑下添加tomcat.service文件,內容如下【此格式已驗證】:
[Unit]
Description=Tomcat8
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/apache-tomcat-9.0.30/bin/startup.sh
ExecStop=/usr/local/apache-tomcat-9.0.30/bin/shutdown.sh
ExecReload=/bin/kill -s HUP $MAINPID
PrivateTmp=true
User=root
Group=root
[Install]
WantedBy=multi-user.target
chmod 754 tomcat.service
如不重啟,直接啟動tomcat.service,則會報錯:
重啟后運行命令:systemctl start tomcat.service 則可正常啟動tomcat,並可以使用命令查看狀態:
systemctl status tomcat.service
確認無誤后,還可以使用命令systemctl enable tomcat.service來設置tomcat隨機啟動。
之后,使用無日志模式:java -jar *****.jar 或者使用日志模式 nohup java -jar ************.jar >************.log 2>&1& 來啟動java程序,並查看結果。
3.設置自動啟動
在/usr/lib/systemd/system目錄下,新建一個新文件:項目.service,內容如下:【格式已驗證,但是需要注意java_home路徑是否正確】
[Unit] Description=xianproject #描述 #After=syslog.target network.target #依賴 [Service] Type=simple ExecStart=/usr/java/jdk1.8.0_211/bin/java -jar /usr/xian/ibweb-0.0.1-SNAPSHOT.jar #StandardError=file:/usr/xian/ibweb.log #StandardOutput=file:/usr/xian/ibweb.normal.log StandardOutput=journal StandardError=journal SyslogIdentifier=xian #前面是java命令的絕對路徑 后面是jar包的絕對路徑 ExecStop=exit User=root Group=root [Install] WantedBy=multi-user.target
通過systemctl enable ***.service設置開機啟動即可。通過systemctl start ****.service來啟動程序,項目日志會在/var/log/message文件中
==========================================================
補充:
==========================================================
在使用****.service方式運行時,按以下步驟對上面的腳本進行精簡,即可實現日志記錄。
[Unit] Description=xianweb #描述 #After=syslog.target network.target #依賴 [Service] Type=simple ExecStart=/usr/local/java/jdk1.8.0_211/bin/java -jar /usr/local/invite_business/ibweb-0.0.1-SNAPSHOT.jar WorkingDirectory=/usr/local/invite_business/#注意要添加這個設置,否則會在當前用戶的家目錄下建立日志 ExecStop=exit User=root Group=root [Install] WantedBy=multi-user.target
然后,在程序的配置文件中記錄:
logging.file=log/web.log
日志記錄要點:
1.添加工作目錄,否則會在當前用戶的家目錄下建立日志文件,這不是我們想要的。
2.在項目的配置文件中,根據spring框架的要求,配置日志目錄或者日志文件。
另外,請勿在程序運行過程中,手動刪除日志文件,否則會報錯。
本文結束。