アプリケーションのログ出力に Log4j を使用しています。log4j.properties ファイルの内容は次のとおりです。
log4j.logger.DEFAULT_LOGGER=INFO,main_log, stdout
log4j.additivity.DEFAULT_LOGGER = false
# Direct log messages to a log file
log4j.appender.main_log=org.apache.log4j.FileAppender
log4j.appender.main_log.File=mainLog.log
log4j.appender.main_log.layout=org.apache.log4j.PatternLayout
log4j.appender.main_log.layout.ConversionPattern=%d{yyyy mm dd HH:mm:ss} %5p %c{1}:%L - %m%n
# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy mm dd HH:mm:ss} %5p %c{1}:%L - %m%n
現在、次のことが起こっています。私が呼び出すメインメソッドを開始するとき
static Logger log = Logger.getLogger("DEFAULT_LOGGER");
log.fatal("Process Logger");
出力を stdout と file.log に出力しますが、これで問題ありません。しかし、アプリケーションを 2 回目に起動すると、既存のファイルに出力が追加されます。しかし、ログファイルを上書きしたい。これは可能ですか?(削除にJavaを使用したくない、もちろん手動で削除したくない) Log4Jには、ロガーに出力を上書きまたは追加するように指示するオプションがありますか?