生成自定义记录器

Rea*_*asy 3 java logging log4j log4j2

我想在log4j2中生成一个自定义Logger。我尝试了以下描述在这里

java -cp log4j-core-2.6.jar org.apache.logging.log4j.core.tools.Generate$CustomLogger Logger TEST=550 PRODUKTION=200 > Logger.java
Run Code Online (Sandbox Code Playgroud)

我从这里获得了log4j-core-2.6.jar文件。如果尝试在终端中运行命令(我使用osx10.11.5),则会出现以下错误:

Error: Main method not found in class org.apache.logging.log4j.core.tools.Generate, please define the main method as:
   public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application
Run Code Online (Sandbox Code Playgroud)

你知道我在做什么吗?

亲切的问候!

编辑:感谢Alexandre Cartapanis,我不得不将命令更改如下:

java -cp log4j-core-2.6.jar 'org.apache.logging.log4j.core.tools.Generate$CustomLogger' MyLogger TEST=550 PRODUKTION=200 > Logger.java
Run Code Online (Sandbox Code Playgroud)

Ale*_*nis 5

尝试用''包围命令。

这里的错误表明Java在“ org.apache.logging.log4j.core.tools.Generate”类中找不到主要方法,但是主要方法在“ org.apache.logging.log4j.core.tools.Generate”中$ CustomLogger”。

类名中的“ $”可能引起麻烦。我不是macOS Shell方面的专家,但我认为解决方案是转义“ $”字符。