Spring Shell: журналы запуска и завершения работы
Я довольно новичок в Spring Shell Framework. Я собрал / запрограммировал Spring Shell, используя репозиторий / инструмент maven (mvn). Это довольно легко создавать / добавлять новые команды на нем.
Я обнаружил, что проблема связана с запуском и закрытием приложения Spring Shell, потому что оно выводит некоторые журналы в этих процессах, которые я тогда не мог отключить.
java -jar target/spring-shell-demo-1.0-SNAPSHOT.jar
Mar 04, 2014 9:47:20 AM org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@d90727: startup date [Tue Mar 04 09:47:20 BRT 2014]; root of context hierarchy
Mar 04, 2014 9:47:20 AM org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
:
-
spring-shell>quit
Closing org.springframework.context.support.ClassPathXmlApplicationContext@173180c: startup date [Tue Mar 04 09:51:17 BRT 2014]; parent: org.springframework.context.annotation.AnnotationConfigApplicationContext@d90727
Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@f13e82: defining beans [readContainerCmd,getSubscriberAccountDetailsCmd,removeContainerCmd,addContainerCmd,getSubscriberDetailsCmd,org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,deleteSubscriberCmd,createSubscriberCmd,org.springframework.context.annotation.ConfigurationClassPostProcessor$ImportAwareBeanPostProcessor#0]; parent: org.springframework.beans.factory.support.DefaultListableBeanFactory@1f7d3b1
:
Я подумал, что это может быть конфигурация log4j, поэтому я создал конфигурацию log4j.xml как:
src/main/resources$ cat log4j.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="appender" class="org.apache.log4j.FileAppender">
<param name="File" value="helloWorld-Log.txt"/>
<param name="Append" value="false"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %p - %m%n"/>
</layout>
</appender>
<appender name="ConsoleAppender" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.SimpleLayout"/>
</appender>
<root>
<priority value ="ERROR"/>
<appender-ref ref="ConsoleAppender"/>
</root>
</log4j:configuration>
Я ожидал, что это может удалить эти журналы INFO от запуска и выключения, но это все тот же. Как вы можете видеть, я создал log4j.xml в папке ресурсов... Я не уверен, что это должен быть другой путь, но я попытался вставить почти в каждом месте.
Буду признателен за любую помощь / советы о том, как работать над этим.
С Уважением,
Дополнительная информация о конфигурации Spring Shell:
src/main/resources/META-INF/spring$ cat spring-shell-plugin.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd">
<context:component-scan base-package="com.xx.yy" />
<context:component-scan base-package="com.xx.zz" />
</beans>
1 ответ
Это работает для меня:
public static void main(String[] args) throws IOException {
LogManager.getLogManager().reset();
Bootstrap.main(args);
}