我正在努力为我的RCP e4应用程序添加日志记录功能。我找到了以下代码段。
import org.eclipse.e4.core.di.annotations.Creatable;
import org.eclipse.e4.core.di.annotations.Optional;
import org.eclipse.e4.core.services.log.Logger;
@Creatable
public class LoggerWrapper extends Logger {
@Optional
@Inject
private Logger logger;
@Override
public boolean isErrorEnabled() {
if (logger != null) {
return logger.isErrorEnabled();
}
return false;
}
@Override
public void error(Throwable t, String message) {
if (logger != null && isErrorEnabled()) {
logger.error(t, withPluginInfo(message));
}
}
}
但我不确定如何配置/初始化Logger?任何帮助将不胜感激。谢谢!
答案 0 :(得分:1)
如果我正确阅读E4Application
,它将始终初始化应用程序上下文,以包含由Logger
实现的org.eclipse.e4.ui.internal.workbench.WorkbenchLogger
。
您可以在生命周期类的PostContextCreate
方法中覆盖它(如果有的话)。
您还可以注入StatusReporter
,它在Eclipse日志中提供简单的日志记录工具(基于Status
个对象)。