亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

java項目打包成可執(zhí)行jar用log4j將日志寫在jar所在目錄操作

 更新時間:2020年08月18日 11:11:47   作者:子落+  
這篇文章主要介紹了java項目打包成可執(zhí)行jar用log4j將日志寫在jar所在目錄操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

開發(fā)一個demo時想將日志輸出到最終打包的jar所在目錄,從網(wǎng)上學習實驗整理之后的配置如下,

log4j.properties

log4j.rootLogger = INFO,console,logFile

log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Threshold=INFO
log4j.appender.console.ImmediateFlush=true
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%p] %m%n

log4j.appender.logFile=org.apache.log4j.FileAppender
log4j.appender.logFile.ImmediateFlush=true
log4j.appender.logFile.Append=false
log4j.appender.logFile.Encoding=UTF-8
log4j.appender.logFile.File=jarDemo.log
log4j.appender.logFile.layout=org.apache.log4j.PatternLayout
log4j.appender.logFile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%p] %m%n

Main.java

private static Logger logger = LoggerFactory.getLogger(Main.class);

 static {
  String path = new File("").getAbsolutePath();

  FileAppender appender = (FileAppender) org.apache.log4j.Logger.getRootLogger().getAppender("logFile");
  appender.setFile(path + File.separator + "jarDemo.log");
 }

最終打包成jar執(zhí)行時,將會在jar文件所在目錄生產(chǎn)一個jarDemo.log的日志文件,如果時用idea運行,這個日志文件會在源碼所在項目的根目錄。

補充知識:springboot工程打成jar包后運行時,讀取外部的配置文件

我們在使用“package spring-boot:repackage”命令,將工程打包成jar包之后,在部署到服務器時,有些配置需要修改,尤其是部署不同的環(huán)境時,像數(shù)據(jù)庫連接等參數(shù)都是需要修改的,為了不是每個服務器上都重新打包,就需要在jar包外部放置配置文件,jar包運行時優(yōu)先讀取外部的配置文件,以windows系統(tǒng)下為例,在目錄“D:\package”目錄下運行,

具體方法如下:

在D:\package目錄下新建lib目錄,將打好的jar包放進去

在D:\package目錄下,將配置文件放進去,例如application.properties

在D:\package目錄下創(chuàng)建run.bat,內(nèi)容如下:

java -jar -Dfile.encoding=UTF-8 lib/xxx.jar com.xxx.App

雙擊run.bat運行

原理說明:

springboot 程序會從下面這些路徑來加載application.properties 配置文件(優(yōu)先級按前后順序)

jar包同級目錄下的/config目錄

jar包同級目錄

classpath里的/config目錄

classpath 同級目錄

以上這篇java項目打包成可執(zhí)行jar用log4j將日志寫在jar所在目錄操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • jvm垃圾回收GC調(diào)優(yōu)基礎原理分析

    jvm垃圾回收GC調(diào)優(yōu)基礎原理分析

    談到調(diào)優(yōu),這一定是針對特定場景、特定目的的事情, 對于 GC 調(diào)優(yōu)來說,首先就需要清楚調(diào)優(yōu)的目標是什么?從性能的角度看,通常關注三個方面,內(nèi)存占用(footprint)、延時(latency)和吞吐量(throughput)
    2022-01-01
  • 如何使用java寫Student類的功能

    如何使用java寫Student類的功能

    這篇文章主要介紹了如何使用java寫Student類的功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • Java實現(xiàn)在線聊天室(層層遞進)

    Java實現(xiàn)在線聊天室(層層遞進)

    這篇文章主要為大家詳細介紹了Java實現(xiàn)在線聊天室,層層遞進,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • RestTemplate發(fā)送HTTP?GET請求使用方法詳解

    RestTemplate發(fā)送HTTP?GET請求使用方法詳解

    這篇文章主要為大家介紹了關于RestTemplate發(fā)送HTTP?GET請求的使用方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家<BR>33+多多進步
    2022-03-03
  • Java的@Transactional、@Aysnc、事務同步問題詳解

    Java的@Transactional、@Aysnc、事務同步問題詳解

    這篇文章主要介紹了Java的@Transactional、@Aysnc、事務同步問題詳解,現(xiàn)在我們需要在一個業(yè)務方法中插入一個用戶,這個業(yè)務方法我們需要加上事務,然后插入用戶后,我們要異步的方式打印出數(shù)據(jù)庫中所有存在的用戶,需要的朋友可以參考下
    2023-11-11
  • Java中由substring方法引發(fā)的內(nèi)存泄漏詳解

    Java中由substring方法引發(fā)的內(nèi)存泄漏詳解

    這篇文章主要介紹了Java中由substring方法引發(fā)的內(nèi)存泄漏詳解,涉及substring方法引發(fā)的內(nèi)存泄漏簡介,substring的作用和實現(xiàn)原理等相關內(nèi)容,具有一定借鑒價值,需要的朋友可以參考下
    2017-12-12
  • RestTemplat中關于getForobject方法的使用

    RestTemplat中關于getForobject方法的使用

    這篇文章主要介紹了RestTemplat中關于getForobject方法的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Java編程實現(xiàn)排他鎖代碼詳解

    Java編程實現(xiàn)排他鎖代碼詳解

    這篇文章主要介紹了Java編程實現(xiàn)排他鎖的相關內(nèi)容,敘述了實現(xiàn)此代碼鎖所需要的功能,以及作者的解決方案,然后向大家分享了設計源碼,需要的朋友可以參考下。
    2017-10-10
  • java啟動jar包將日志打印到文本的簡單操作

    java啟動jar包將日志打印到文本的簡單操作

    這篇文章主要介紹了java啟動jar包將日志打印到文本的簡單操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • windows7配置java環(huán)境變量的圖文教程

    windows7配置java環(huán)境變量的圖文教程

    這篇文章主要介紹了windows7配置java環(huán)境變量的教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02

最新評論