Я работаю над веб-приложением Java EE, которое ничего не выводит на консоль. Он использует log4j, файл log4j.properties установлен для вывода в stdout. Тем не менее, он не работает, в консоли не появляется запись. Оказывается, даже System.out не появляется в консоли. Что может быть причиной этого?Java не записывается в консоль
Я запускаю MyEclipse 10.1, log4j-1.2.11, tomcat 5.5.35, java 1.6.0_31.
По желанию, здесь подам .properties:
### direct log messages to stdout ###
# Configure Root Logger
log4j.rootLogger = DEBUG, stdout
log4j.logger.org.hibernate = DEBUG, stdout
#log4j.logger.org.springframework = ERROR, stdout
# Configure stdout Appender
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern =%d [%t] %-5p %c - %m%n
И войти обработчик:
public class LogHandler {
private static Logger sLog = Logger.getLogger(LogHandler.class);
public LogHandler(){
}
public void info_toLOG(String msg00) {
sLog.info("\n" + msg00 + "\n");
}
public void error_toLOG(Exception e) {
sLog.error("\n" + e.getClass() + "\n"
+ e.getCause() + "\n"
+ e.getMessage() + "\n"
+ e.getLocalizedMessage() + "\n"
+ e.getStackTrace().toString() + "\n");
}
public void warning_toLOG(String msg00) {
sLog.warn("\n" + msg00 + "\n");
}
}
Я использую MyEclipse для запуска и остановки. Просто укажите мой tomcat install dir. MyEclipse добавлены следующие VM арг:
-Dcatalina.home="<tomcat dir>"
-Dcatalina.base="<tomcat dir> "
-Djava.endorsed.dirs="<tomcat dir>/common/endorsed"
-Djava.io.tmpdir="<tomcat dir>/temp"
-Djava.library.path=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin:"<tomcat dir>/bin"
-Dsun.io.useCanonCaches=false
-Xmx1024M
EDIT: Спасибо тем, кто пытался помочь. Я должен был указать в исходном вопросе, что я запускаю Mac OS X 10.7.3. В настройках Utilities -> Java Preferences -> Advanced -> Java Console была установлена настройка, которая после установки в Show Console исправила проблему.
Конфигурация log4j (http://logging.apache.org/log4j/1.2/manual.html) может быть сложной задачей. В типичной настройке есть слушатели, настроенные для обработки определенных категорий сообщений журнала, и каждый слушатель может направлять вывод на различные адресаты (моя терминология, а не log4j). Если вы можете опубликовать свой файл свойств и примерную строку кода Java, который выполняет операцию регистрации, мы можем указать причину проблемы. –