本文目的html
純屬記錄,以備後查。java
1.安裝JAVA JDKweb
安裝jdk略。spring
配置JDK,打開/etc/profile文件,在最後添加以下代碼:apache
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
而後運行命令,刷新配置:tomcat
source /etc/profile
2.安裝tomcat【不是必須】框架
在usr/local/目錄下,添加新目錄tomcat,而後進入目錄,獲取tomcat:spa
wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.20/bin/apache-tomcat-9.0.20.tar.gz
解壓壓縮包3d
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路徑是否正確】
# 在/usr/lib/systemd/system路徑下添加tomcat.service文件,內容以下: [Unit] Description=Tomcat After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking Environment="JAVA_HOME=/usr/java/jdk1.8.0_211/" PIDFile=/usr/local/tomcat/apache-tomcat-9.0.20/temp/tomcat.pid ExecStart=/usr/local/tomcat/apache-tomcat-9.0.20/bin/startup.sh ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true [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框架的要求,配置日誌目錄或者日誌文件。
另外,請勿在程序運行過程當中,手動刪除日誌文件,不然會報錯。
本文結束。