草庐IT

java - 如何以编程方式配置 appender 或初始化 log4j2 中的日志记录?

我一直在尝试以编程方式配置appender,但到目前为止还没有成功。我只想配置没有文件的附加程序,以便它可以将日志发送到控制台或文件。StringPATTERN="%d[%p|%c|%C{1}]%m%n";PatternLayoutlayout=PatternLayout.createLayout(PATTERN,null,null,null,null,null);ConsoleAppenderconsole=ConsoleAppender.createAppender(layout,null,null,"console","true","true");//createappender

java - 如何在 log4j2 中配置 null appender

Log4j1.*有一个nullappenderclass,但我在log4j2中找不到等效项。有吗?如何在log4j2.xml中配置一个nullappender? 最佳答案 从Log4j2版本2.7开始,有一个NullAppender类。早期版本没有它。它在配置文件中使用的名称是“Null”。它可以像这样添加到Appenders列表中: 关于java-如何在log4j2中配置nullappender,我们在StackOverflow上找到一个类似的问题: htt

java - 将 Java 代码 1.5 降级到 1.4(奖励积分 : J2ME, Blackberry!!!)

我想移植一些现有的j2se库(例如Apache压缩库)以用于Blackberry开发,但有一个问题(而且不仅仅是一个)。首先,大多数java库广泛使用j2se集合和数据类型,而这些在j2me平台上通常是缺失的——但由于开源j2seapi实现(如ApacheHarmony),这在理论上是可以解决的。更大的问题是,BlackberryJDK似乎是基于Java1.4,因此任何使用泛型和其他1.5功能(如Enums)的代码都无法在Blackberry上轻松编译。这提出了一个有趣的问题,即是否有任何现有工具或项目可以进行自动1.5->1.4转换,同时支持j2me-bastardized字节码:)

java - Log4j2 自定义插件 - 使用 Maven Assembly Plugin 进行注释处理

我对Maven不是很熟悉,昨天才开始用,但我喜欢它。在我的项目中,我使用Log4j2库进行日志记录,并且由于高级插件(如附加程序、转换器)的不足,我需要使用自定义插件。log4j-api和log4j-core(还有许多其他库)作为依赖项添加到与我的项目关联的pom.xml中。实际上,我使用的是Log4j的2.0版。Log4j使用注释处理来预加载标记为@Plugin的类。据我所知,在旧版本的log4j中,必须在pom.xml中指定额外的插件条目才能触发插件处理,或者必须将带有自定义插件的包键入配置文件中的packages属性(https://logging.apache.org/log4

java - log4j2 错误 StatusLogger 无法识别的转换说明符

当我在intellijIdea中运行main方法时,我的项目中有log4j2,它正确地打印日志。当我使用maven-shade-plugin包项目到jar文件,并将jar作为独立应用程序运行时,它显示错误:java-cppackage.jarcom.xxx.TestMain控制台输出ERRORStatusLoggerUnrecognizedformatspecifier[d]ERRORStatusLoggerUnrecognizedconversionspecifier[d]startingatposition16inconversionpattern.ERRORStatusLogge

java - J2ME 中的 HTTP 身份验证

我正在尝试创建一个J2ME应用程序,它使用HttpConnection与网络服务器通信连接器。当我与WebServer对话时,我必须使用基本HTTP身份验证进行身份验证,这通常是这样的http://username:password@website.com/rest/api/method但是在J2ME中,当我构造一个这种形式的url时,它不起作用。我还尝试添加请求属性,hc=(HttpConnection)Connector.open(url);hc.setRequestProperty("User","alagu");hc.setRequestProperty("pass","myp

java - 尝试创建 log4j2 rollingfileappender 时出错

我正在尝试从使用FileAppender切换到使用log4j2的RollingFileAppender(同时发生在beta3和beta4jar中)。我将其配置为:%d%p%C{1.}[%t]%m%n......在代码中,我试图以这种方式获取记录器:Loggerlogger=LogManager.getLogger(this.getClass());但是当我运行它时出现了这个异常:2013-02-0117:56:54,773ERRORUnabletoinvokemethodcreateAppenderinclassorg.apache.logging.log4j.core.appende

java - Log4j2 登录到用户主文件夹

我正在尝试将log4j2日志保存到用户主文件夹中,因为用户无权写入应用程序的安装位置。这是我的log4j设置的相关部分。不幸的是,它没有解析user.home,因此它创建了运行应用程序的文件夹$user.home。%d{dd/MM/yyyyHH:mm:ss}%5p%c{1}:%L-%m%n${user.home}/niro/logs/niroDesk.log${user.home}/niro/logs/niroDesk.log-%d{yyyy-MM-dd}.log.gz%d{dd/MM/yyyyHH:mm:ss}%5p%c{1}:%L-%m%n${user.home}/niro/log

java - 如何将日期时间戳添加到 log4j2 日志文件?

我想用log4j2创建依赖日期的日志文件:生成的日志文件名:application-%d{yyyy-MM-dd}.log,时间戳未被替换。为什么? 最佳答案 要在文件名后附加日期,请将%d替换为以下格式,我遇到了同样的问题,但这样做成功了: 关于java-如何将日期时间戳添加到log4j2日志文件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/31670088/

java - 如何在 Java ME 中获取异常堆栈跟踪的文本?

在常规Java中,您可以通过将PrintWriter传递给printStackTrace来获取堆栈跟踪的文本。我有一种感觉,我知道这个问题的答案(即“否”),但是,有什么方法可以将JavaME中的堆栈跟踪文本作为字符串获取?更新:我应该提一下,我仅限于CLDC1.0 最佳答案 两种解决方案:在模拟器上重现异常。无线工具包和Netbeans将在您的计算机上打印堆栈跟踪。使用Symbian设备。在Series60第3版的FeaturePack2之前,Symbian手机使用SunHotspotjava虚拟机。通过将其链接到C标准库的部分实