NutzCN Logo
问答 wk加载 tio失败
发布于 2104天前 作者 baocj 1975 次浏览 复制 上一个帖子 下一个帖子
标签: nutzwk

求助:目前在用wk 加入 tio 做一些 socket 管理,碰到了问题,初始化的时候SimpleHandler,SimpleListener没有被加载到 iocbean 中。请帮忙看下

/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/bin/java "-javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=49847:/Applications/IntelliJ IDEA.app/Contents/bin" -Dfile.encoding=UTF-8 -classpath /Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/lib/packager.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home/lib/tools.jar:/Users/zhaolei/IdeaProjects/NutzWk/wk-app/wk-nb-service-factory/target/classes:/Users/zhaolei/IdeaProjects/NutzWk/wk-framework/target/classes:/Users/zhaolei/IdeaProjects/NutzWk/wk-app/wk-model/target/classes:/Users/zhaolei/.m2/repository/org/nutz/nutz-integration-json4excel/1.r.68.v20190318/nutz-integration-json4excel-1.r.68.v20190318.jar:/Users/zhaolei/IdeaProjects/NutzWk/wk-app/wk-common/target/classes:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-core/2.3.2-SNAPSHOT/nutzboot-core-2.3.2-SNAPSHOT.jar:/Users/zhaolei/.m2/repository/org/nutz/nutz/1.r.68-SNAPSHOT/nutz-1.r.68-20190313.151505-17.jar:/Users/zhaolei/.m2/repository/javax/servlet/javax.servlet-api/3.1.0/javax.servlet-api-3.1.0.jar:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-dubbo/2.3.2-SNAPSHOT/nutzboot-starter-dubbo-2.3.2-SNAPSHOT.jar:/Users/zhaolei/.m2/repository/org/nutz/nutz-integration-dubbo/1.r.68-SNAPSHOT/nutz-integration-dubbo-1.r.68-20190303.125153-13.jar:/Users/zhaolei/.m2/repository/org/apache/curator/curator-framework/4.0.1/curator-framework-4.0.1.jar:/Users/zhaolei/.m2/repository/org/apache/curator/curator-client/4.0.1/curator-client-4.0.1.jar:/Users/zhaolei/.m2/repository/com/google/guava/guava/20.0/guava-20.0.jar:/Users/zhaolei/.m2/repository/com/alibaba/dubbo/2.6.6/dubbo-2.6.6.jar:/Users/zhaolei/.m2/repository/org/springframework/spring-context/4.3.21.RELEASE/spring-context-4.3.21.RELEASE.jar:/Users/zhaolei/.m2/repository/org/springframework/spring-aop/4.3.21.RELEASE/spring-aop-4.3.21.RELEASE.jar:/Users/zhaolei/.m2/repository/org/springframework/spring-beans/4.3.21.RELEASE/spring-beans-4.3.21.RELEASE.jar:/Users/zhaolei/.m2/repository/org/springframework/spring-core/4.3.21.RELEASE/spring-core-4.3.21.RELEASE.jar:/Users/zhaolei/.m2/repository/org/springframework/spring-expression/4.3.21.RELEASE/spring-expression-4.3.21.RELEASE.jar:/Users/zhaolei/.m2/repository/org/javassist/javassist/3.24.0-GA/javassist-3.24.0-GA.jar:/Users/zhaolei/.m2/repository/org/jboss/netty/netty/3.2.5.Final/netty-3.2.5.Final.jar:/Users/zhaolei/.m2/repository/org/slf4j/jcl-over-slf4j/1.7.25/jcl-over-slf4j-1.7.25.jar:/Users/zhaolei/.m2/repository/com/101tec/zkclient/0.11/zkclient-0.11.jar:/Users/zhaolei/.m2/repository/org/apache/zookeeper/zookeeper/3.4.13/zookeeper-3.4.13.jar:/Users/zhaolei/.m2/repository/jline/jline/0.9.94/jline-0.9.94.jar:/Users/zhaolei/.m2/repository/org/apache/yetus/audience-annotations/0.5.0/audience-annotations-0.5.0.jar:/Users/zhaolei/.m2/repository/io/netty/netty/3.10.6.Final/netty-3.10.6.Final.jar:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-nutz-dao/2.3.2-SNAPSHOT/nutzboot-starter-nutz-dao-2.3.2-SNAPSHOT.jar:/Users/zhaolei/.m2/repository/org/nutz/nutz-plugins-daocache/1.r.68-SNAPSHOT/nutz-plugins-daocache-1.r.68-20190303.125235-13.jar:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-jdbc/2.3.2-SNAPSHOT/nutzboot-starter-jdbc-2.3.2-SNAPSHOT.jar:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-redis/2.3.2-SNAPSHOT/nutzboot-starter-redis-2.3.2-SNAPSHOT.jar:/Users/zhaolei/.m2/repository/org/nutz/nutz-integration-jedis/1.r.68-SNAPSHOT/nutz-integration-jedis-1.r.68-20190303.125212-13.jar:/Users/zhaolei/.m2/repository/redis/clients/jedis/2.9.0/jedis-2.9.0.jar:/Users/zhaolei/.m2/repository/org/apache/commons/commons-pool2/2.4.2/commons-pool2-2.4.2.jar:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-wkcache/2.3.2-SNAPSHOT/nutzboot-starter-wkcache-2.3.2-SNAPSHOT.jar:/Users/zhaolei/.m2/repository/org/nutz/nutz-plugins-wkcache/1.r.68-SNAPSHOT/nutz-plugins-wkcache-1.r.68-20190303.125302-14.jar:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-sentinel-dubbo/2.3.2-SNAPSHOT/nutzboot-starter-sentinel-dubbo-2.3.2-SNAPSHOT.jar:/Users/zhaolei/.m2/repository/com/alibaba/csp/sentinel-dubbo-adapter/1.5.0/sentinel-dubbo-adapter-1.5.0.jar:/Users/zhaolei/.m2/repository/com/alibaba/csp/sentinel-core/1.5.0/sentinel-core-1.5.0.jar:/Users/zhaolei/.m2/repository/com/alibaba/csp/sentinel-transport-simple-http/1.5.0/sentinel-transport-simple-http-1.5.0.jar:/Users/zhaolei/.m2/repository/com/alibaba/csp/sentinel-transport-common/1.5.0/sentinel-transport-common-1.5.0.jar:/Users/zhaolei/.m2/repository/com/alibaba/csp/sentinel-datasource-extension/1.5.0/sentinel-datasource-extension-1.5.0.jar:/Users/zhaolei/.m2/repository/com/alibaba/fastjson/1.2.56/fastjson-1.2.56.jar:/Users/zhaolei/.m2/repository/com/alibaba/csp/sentinel-cluster-client-default/1.5.0/sentinel-cluster-client-default-1.5.0.jar:/Users/zhaolei/.m2/repository/com/alibaba/csp/sentinel-cluster-common-default/1.5.0/sentinel-cluster-common-default-1.5.0.jar:/Users/zhaolei/.m2/repository/io/netty/netty-handler/4.1.31.Final/netty-handler-4.1.31.Final.jar:/Users/zhaolei/.m2/repository/io/netty/netty-buffer/4.1.31.Final/netty-buffer-4.1.31.Final.jar:/Users/zhaolei/.m2/repository/io/netty/netty-common/4.1.31.Final/netty-common-4.1.31.Final.jar:/Users/zhaolei/.m2/repository/io/netty/netty-transport/4.1.31.Final/netty-transport-4.1.31.Final.jar:/Users/zhaolei/.m2/repository/io/netty/netty-resolver/4.1.31.Final/netty-resolver-4.1.31.Final.jar:/Users/zhaolei/.m2/repository/io/netty/netty-codec/4.1.31.Final/netty-codec-4.1.31.Final.jar:/Users/zhaolei/.m2/repository/com/alibaba/csp/sentinel-cluster-server-default/1.5.0/sentinel-cluster-server-default-1.5.0.jar:/Users/zhaolei/.m2/repository/com/alibaba/csp/sentinel-parameter-flow-control/1.5.0/sentinel-parameter-flow-control-1.5.0.jar:/Users/zhaolei/.m2/repository/com/googlecode/concurrentlinkedhashmap/concurrentlinkedhashmap-lru/1.4.2/concurrentlinkedhashmap-lru-1.4.2.jar:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-logback-exts/2.3.2-SNAPSHOT/nutzboot-starter-logback-exts-2.3.2-SNAPSHOT.jar:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-test-junit4/2.3.2-SNAPSHOT/nutzboot-starter-test-junit4-2.3.2-SNAPSHOT.jar:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-tio/2.3.2-SNAPSHOT/nutzboot-starter-tio-2.3.2-SNAPSHOT.jar:/Users/zhaolei/.m2/repository/org/t-io/tio-core/3.1.8.v20180818-RELEASE/tio-core-3.1.8.v20180818-RELEASE.jar:/Users/zhaolei/.m2/repository/org/t-io/tio-utils/3.1.8.v20180818-RELEASE/tio-utils-3.1.8.v20180818-RELEASE.jar:/Users/zhaolei/.m2/repository/com/github/ben-manes/caffeine/caffeine/2.6.2/caffeine-2.6.2.jar:/Users/zhaolei/.m2/repository/cn/hutool/hutool-all/4.5.0/hutool-all-4.5.0.jar:/Users/zhaolei/.m2/repository/com/alibaba/druid/1.1.14/druid-1.1.14.jar:/Users/zhaolei/.m2/repository/mysql/mysql-connector-java/5.1.47/mysql-connector-java-5.1.47.jar:/Users/zhaolei/.m2/repository/org/apache/commons/commons-lang3/3.7/commons-lang3-3.7.jar:/Users/zhaolei/.m2/repository/ch/qos/logback/logback-core/1.2.3/logback-core-1.2.3.jar:/Users/zhaolei/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar:/Users/zhaolei/.m2/repository/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar cn.wizzer.app.factory.commons.core.DubboRpcFactoryMainLauncher
08:25:28,357 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
08:25:28,357 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
08:25:28,357 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [file:/Users/zhaolei/IdeaProjects/NutzWk/wk-app/wk-nb-service-factory/target/classes/logback.xml]
08:25:28,564 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
08:25:28,565 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
08:25:28,580 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT]
08:25:28,700 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - This appender no longer admits a layout as a sub-component, set an encoder instead.
08:25:28,700 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - To ensure compatibility, wrapping your layout in LayoutWrappingEncoder.
08:25:28,700 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - See also http://logback.qos.ch/codes.html#layoutInsteadOfEncoder for details
08:25:28,702 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
08:25:28,711 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [FILE]
08:25:28,746 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@745160567 - No compression will be used
08:25:28,751 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@745160567 - Will use the pattern ~/logs/sys-%d{yyyy-MM-dd}-976.log for the active file
08:25:28,760 |-INFO in c.q.l.core.rolling.DefaultTimeBasedFileNamingAndTriggeringPolicy - The date pattern is 'yyyy-MM-dd' from file name pattern '~/logs/sys-%d{yyyy-MM-dd}-976.log'.
08:25:28,760 |-INFO in c.q.l.core.rolling.DefaultTimeBasedFileNamingAndTriggeringPolicy - Roll-over at midnight.
08:25:28,766 |-INFO in c.q.l.core.rolling.DefaultTimeBasedFileNamingAndTriggeringPolicy - Setting initial period to Wed Mar 20 08:25:28 CST 2019
08:25:28,767 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
08:25:28,770 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: ~/logs/sys-2019-03-20-976.log
08:25:28,770 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [null]
08:25:28,772 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
08:25:28,776 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC]
08:25:28,778 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [FILE] to ch.qos.logback.classic.AsyncAppender[ASYNC]
08:25:28,778 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC] - Attaching appender named [FILE] to AsyncAppender.
08:25:28,778 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC] - Setting discardingThreshold to 0
08:25:28,780 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [java] to false
08:25:28,780 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [org.eclipse.jetty] to DEBUG
08:25:28,780 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[org.eclipse.jetty]
08:25:28,781 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to DEBUG
08:25:28,781 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ROOT]
08:25:28,781 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ASYNC] to Logger[ROOT]
08:25:28,781 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
08:25:28,783 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@246ae04d - Registering current configuration as safe fallback point

[INFO ] 08:25:29.644 [main] org.nutz.boot.banner.SimpleBannerPrinter - 
 _  _ _   _ _____ ______      ___  __
| \| | | | |_   _|_  /\ \    / / |/ /
| .` | |_| | | |  / /  \ \/\/ /| ' <
|_|\_|\___/  |_| /___|  \_/\_/ |_|\_\

:: Built with NutzWk

[DEBUG] 08:25:29.860 [main] org.nutz.resource.Scans - Locations count=97 time use 181ms
[DEBUG] 08:25:29.931 [main] org.nutz.resource.Scans - Found 1 resource by src( custom/ ) , regex( ^.+[.]properties$ )
[DEBUG] 08:25:29.932 [main] org.nutz.ioc.impl.PropertiesProxy - load properties from jar:file:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-core/2.3.2-SNAPSHOT/nutzboot-core-2.3.2-SNAPSHOT.jar!/custom/emtry.properties
[DEBUG] 08:25:29.933 [main] org.nutz.boot.config.impl.PropertiesConfigureLoader - load /Users/zhaolei/IdeaProjects/NutzWk/wk-app/wk-nb-service-factory/target/classes/application.properties
[DEBUG] 08:25:30.054 [main] org.nutz.resource.Scans - Found 1 resource by src( ioc/ ) , regex( ^(.+[.])(js|json)$ )
[DEBUG] 08:25:30.086 [main] org.nutz.ioc.loader.json.JsonLoader - loading [emtry.json]
[DEBUG] 08:25:30.126 [main] org.nutz.ioc.loader.json.JsonLoader - Loaded 0 bean define from path=[ioc/] --> []
[DEBUG] 08:25:30.265 [main] org.nutz.castor.Castors - Using 107 castor for Castors
[DEBUG] 08:25:30.309 [main] org.nutz.ioc.aop.SimpleAopMaker - Load AopConfigure for anno=org.nutz.aop.interceptor.async.Async by type=org.nutz.aop.interceptor.async.AsyncAopIocLoader
[INFO ] 08:25:30.318 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -  > scan 'cn.wizzer.app.factory.commons.core'
[DEBUG] 08:25:30.330 [main] org.nutz.resource.Scans - Found 1 resource by src( cn/wizzer/app/factory/commons/core/ ) , regex( ^.+[.]class$ )
[INFO ] 08:25:30.332 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'dubboRpcFactoryMainLauncher             ' - cn.wizzer.app.factory.commons.core.DubboRpcFactoryMainLauncher
[INFO ] 08:25:30.352 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -  > scan 'org.nutz.boot.starter'
[DEBUG] 08:25:30.365 [main] org.nutz.resource.Scans - Found 36 resource by src( org/nutz/boot/starter/ ) , regex( ^.+[.]class$ )
[INFO ] 08:25:30.435 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'dubboStarter                            ' - org.nutz.boot.starter.dubbo.DubboStarter
[INFO ] 08:25:30.437 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'nutDaoStarter                           ' - org.nutz.boot.starter.nutz.dao.NutDaoStarter
[DEBUG] 08:25:30.458 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : NutDaoStarter.getSqlManager(...) define as name=sqlManager
[DEBUG] 08:25:30.473 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : NutDaoStarter.createCacheSerializer(...) define as name=daoCacheSerializer
[DEBUG] 08:25:30.475 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : NutDaoStarter.createDaoCacheInterceptor(...) define as name=daoCacheInterceptor
[DEBUG] 08:25:30.476 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : NutDaoStarter.getDao(...) define as name=dao
[INFO ] 08:25:30.549 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'dataSourceStarter                       ' - org.nutz.boot.starter.jdbc.DataSourceStarter
[DEBUG] 08:25:30.551 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : DataSourceStarter.getDataSource(...) define as name=dataSource
[DEBUG] 08:25:30.552 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : DataSourceStarter.createDruidDataSource(...) define as name=druidDataSource
[DEBUG] 08:25:30.552 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : DataSourceStarter.createHikariCPDataSource(...) define as name=hikariDataSource
[INFO ] 08:25:30.553 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'druidWebStatFilterStarter               ' - org.nutz.boot.starter.jdbc.DruidWebStatFilterStarter
[INFO ] 08:25:30.564 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'druidWebStatServletStarter              ' - org.nutz.boot.starter.jdbc.DruidWebStatServletStarter
[INFO ] 08:25:30.566 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'sentinelStarter                         ' - org.nutz.boot.starter.sentinel.SentinelStarter
[INFO ] 08:25:30.625 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'loglevelService                         ' - org.nutz.boot.starter.logback.exts.loglevel.LoglevelService
[INFO ] 08:25:30.649 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'loglevelHeartbeatThread                 ' - org.nutz.boot.starter.logback.exts.loglevel.LoglevelHeartbeatThread
[INFO ] 08:25:30.667 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'logbackStarter                          ' - org.nutz.boot.starter.logback.exts.LogbackStarter
[INFO ] 08:25:30.668 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'loglevelProperty                        ' - org.nutz.boot.starter.logback.exts.loglevel.LoglevelProperty
[INFO ] 08:25:30.670 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'tioServerStarter                        ' - org.nutz.boot.starter.tio.server.TioServerStarter
[DEBUG] 08:25:30.687 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : TioServerStarter.getServerAioHandler(...) define as name=nopServerAioHandler
[DEBUG] 08:25:30.687 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : TioServerStarter.getServerAioListener(...) define as name=nopServerAioListener
[DEBUG] 08:25:30.687 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : TioServerStarter.getServerGroupContext(...) define as name=serverGroupContext
[DEBUG] 08:25:30.689 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : TioServerStarter.getAioServer(...) define as name=aioServer
[DEBUG] 08:25:30.691 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : TioServerStarter.getServerUdpHandler(...) define as name=nopServerUdphandler
[DEBUG] 08:25:30.691 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : TioServerStarter.getUdpServerConf(...) define as name=udpServerConf
[DEBUG] 08:25:30.700 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader - Found @IocBean method : TioServerStarter.getUdpServer(...) define as name=udpServer
[DEBUG] 08:25:30.703 [main] org.nutz.boot.NbApp - Found jar:file:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-dubbo/2.3.2-SNAPSHOT/nutzboot-starter-dubbo-2.3.2-SNAPSHOT.jar!/META-INF/nutz/org.nutz.boot.starter.NbStarter
[DEBUG] 08:25:30.704 [main] org.nutz.boot.NbApp - Found jar:file:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-nutz-dao/2.3.2-SNAPSHOT/nutzboot-starter-nutz-dao-2.3.2-SNAPSHOT.jar!/META-INF/nutz/org.nutz.boot.starter.NbStarter
[DEBUG] 08:25:30.704 [main] org.nutz.boot.NbApp - Found jar:file:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-jdbc/2.3.2-SNAPSHOT/nutzboot-starter-jdbc-2.3.2-SNAPSHOT.jar!/META-INF/nutz/org.nutz.boot.starter.NbStarter
[DEBUG] 08:25:30.706 [main] org.nutz.boot.NbApp - Found jar:file:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-redis/2.3.2-SNAPSHOT/nutzboot-starter-redis-2.3.2-SNAPSHOT.jar!/META-INF/nutz/org.nutz.boot.starter.NbStarter
[DEBUG] 08:25:30.706 [main] org.nutz.boot.NbApp - Found jar:file:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-wkcache/2.3.2-SNAPSHOT/nutzboot-starter-wkcache-2.3.2-SNAPSHOT.jar!/META-INF/nutz/org.nutz.boot.starter.NbStarter
[DEBUG] 08:25:30.707 [main] org.nutz.boot.NbApp - Found jar:file:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-sentinel-dubbo/2.3.2-SNAPSHOT/nutzboot-starter-sentinel-dubbo-2.3.2-SNAPSHOT.jar!/META-INF/nutz/org.nutz.boot.starter.NbStarter
[DEBUG] 08:25:30.708 [main] org.nutz.boot.NbApp - Found jar:file:/Users/zhaolei/.m2/repository/org/nutz/nutzboot-starter-tio/2.3.2-SNAPSHOT/nutzboot-starter-tio-2.3.2-SNAPSHOT.jar!/META-INF/nutz/org.nutz.boot.starter.NbStarter
[INFO ] 08:25:30.789 [main] org.nutz.boot.NbApp - Configure Manual:
|id  |key                                     |required  |Possible Values     |Default   |Description         |                                starters|
|----|----------------------------------------|----------|--------------------|----------|--------------------|----------------------------------------|
|0   |druid.web.filter.exclusions             |no        |                    |          |需要排除的路径             |org.nutz.boot.starter.jdbc.DruidWebStatFilterStarter|
|1   |druid.web.filter.principalCookieName    |no        |                    |          |用户权限信息的cookie属性名称   |org.nutz.boot.starter.jdbc.DruidWebStatFilterStarter|
|2   |druid.web.filter.principalSessionName   |no        |                    |          |用户权限信息的session属性名称  |org.nutz.boot.starter.jdbc.DruidWebStatFilterStarter|
|3   |druid.web.filter.profileEnable          |no        |                    |          |是否开启性能监控            |org.nutz.boot.starter.jdbc.DruidWebStatFilterStarter|
|4   |druid.web.filter.realIpHeader           |no        |                    |          |Header中ReadIp对应的key |org.nutz.boot.starter.jdbc.DruidWebStatFilterStarter|
|5   |druid.web.filter.sessionStatEnable      |no        |                    |true      |是否开启session状态监控     |org.nutz.boot.starter.jdbc.DruidWebStatFilterStarter|
|6   |druid.web.filter.sessionStatMaxCount    |no        |                    |          |session最大状态数量       |org.nutz.boot.starter.jdbc.DruidWebStatFilterStarter|
|7   |druid.web.servlet.allow                 |no        |                    |          |允许访问的ip列表           |org.nutz.boot.starter.jdbc.DruidWebStatServletStarter|
|8   |druid.web.servlet.deny                  |no        |                    |          |禁止访问的ip列表           |org.nutz.boot.starter.jdbc.DruidWebStatServletStarter|
|9   |druid.web.servlet.jmxPassword           |no        |                    |          |JMX的密码              |org.nutz.boot.starter.jdbc.DruidWebStatServletStarter|
|10  |druid.web.servlet.jmxUrl                |no        |                    |          |读取JMX信息的URL         |org.nutz.boot.starter.jdbc.DruidWebStatServletStarter|
|11  |druid.web.servlet.jmxUsername           |no        |                    |          |JMX的用户名             |org.nutz.boot.starter.jdbc.DruidWebStatServletStarter|
|12  |druid.web.servlet.loginPassword         |no        |                    |随机值,打印在日志中|访问monitor页面的密码      |org.nutz.boot.starter.jdbc.DruidWebStatServletStarter|
|13  |druid.web.servlet.loginUsername         |no        |                    |driud     |访问monitor页面的用户名     |org.nutz.boot.starter.jdbc.DruidWebStatServletStarter|
|14  |druid.web.servlet.resetEnable           |no        |                    |true      |是否允许重置统计结果          |org.nutz.boot.starter.jdbc.DruidWebStatServletStarter|
|15  |jdbc.password                           |no        |                    |          |数据库密码               |org.nutz.boot.starter.jdbc.DataSourceStarter|
|16  |jdbc.type                               |no        |druid,simple,hikari |druid     |连接池类型               |org.nutz.boot.starter.jdbc.DataSourceStarter|
|17  |jdbc.url                                |yes       |                    |          |JDBC URL            |org.nutz.boot.starter.jdbc.DataSourceStarter|
|18  |jdbc.username                           |no        |                    |          |数据库用户名              |org.nutz.boot.starter.jdbc.DataSourceStarter|
|19  |nutz.dao.interceptor.cache.cache4Null   |no        |                    |true      |是否缓存null结果          |org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|20  |nutz.dao.interceptor.cache.debug        |no        |                    |false     |打印daocache详细调试日志    |org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|21  |nutz.dao.interceptor.cache.enable       |no        |                    |false     |是否使用daocache        |org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|22  |nutz.dao.interceptor.cache.enableWhenTrans|no        |                    |false     |事务内是否启用daocache     |org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|23  |nutz.dao.interceptor.cache.provider.ioc.name|no        |                    |daoCacheProvider|daocache提供者DaoCacheProvider的IocBean名称|org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|24  |nutz.dao.interceptor.cache.provider.memory.cacheSize|no        |                    |          |daocache提供者MemoryDaoCacheProvider的默认缓存大小|org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|25  |nutz.dao.interceptor.cache.provider.type|no        |memory,ehcache,jedis,ioc|memory    |daocache提供者         |org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|26  |nutz.dao.interceptor.cache.table.names  |no        |                    |          |需要缓存的表名称,英文逗号分隔     |org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|27  |nutz.dao.interceptor.cache.table.pattern|no        |                    |          |需要缓存的表名称的正则表达式      |org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|28  |nutz.dao.interceptor.log.enable         |no        |                    |true      |是否打印dao的SQL日志       |org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|29  |nutz.dao.interceptor.time.enable        |no        |                    |false     |是否打印dao的SQL耗时日志     |org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|30  |nutz.dao.sqls.path                      |no        |                    |sqls/     |sql目录               |org.nutz.boot.starter.nutz.dao.NutDaoStarter|
|31  |redis.database                          |no        |                    |0         |redis数据库序号          |org.nutz.boot.starter.redis.JedisStarter|
|32  |redis.host                              |no        |                    |127.0.0.1 |redis服务器ip或域名       |org.nutz.boot.starter.redis.JedisStarter|
|33  |redis.max_redir                         |no        |                    |10        |redis集群最大重定向次数      |org.nutz.boot.starter.redis.JedisStarter|
|34  |redis.nodes                             |no        |                    |          |redis集群节点列表         |org.nutz.boot.starter.redis.JedisStarter|
|35  |redis.password                          |no        |                    |          |redis密码             |org.nutz.boot.starter.redis.JedisStarter|
|36  |redis.port                              |no        |                    |6379      |redis服务器端口          |org.nutz.boot.starter.redis.JedisStarter|
|37  |redis.soTimeout                         |no        |                    |0         |redis写超时            |org.nutz.boot.starter.redis.JedisStarter|
|38  |redis.timeout                           |no        |                    |2000      |redis读写超时           |org.nutz.boot.starter.redis.JedisStarter|
|39  |sentinel.channel                        |no        |                    |sentinel  |Sentinel规则存储channel值|org.nutz.boot.starter.sentinel.SentinelStarter|
|40  |sentinel.csp.sentinel.api.port          |no        |                    |8721      |Sentinel客户端端口       |org.nutz.boot.starter.sentinel.SentinelStarter|
|41  |sentinel.csp.sentinel.dashboard.server  |no        |                    |localhost:9090|Sentinel控制台地址       |org.nutz.boot.starter.sentinel.SentinelStarter|
|42  |sentinel.csp.sentinel.heartbeat.client.ip|no        |                    |          |Sentinel客户端IP,不配置则自动获取本地IP|org.nutz.boot.starter.sentinel.SentinelStarter|
|43  |sentinel.csp.sentinel.heartbeat.interval.ms|no        |                    |3000      |Sentinel客户端通信间隔毫秒数  |org.nutz.boot.starter.sentinel.SentinelStarter|
|44  |sentinel.enabled                        |no        |                    |false     |是否启动Sentinel客户端     |org.nutz.boot.starter.sentinel.SentinelStarter|
|45  |sentinel.project.name                   |no        |                    |          |Sentinel客户端名称,不设置则自动获取nutz.application.name|org.nutz.boot.starter.sentinel.SentinelStarter|
|46  |sentinel.rulekey                        |no        |                    |nutzboot  |Sentinel规则存储key值    |org.nutz.boot.starter.sentinel.SentinelStarter|
|47  |tio.heartbeat                           |no        |                    |false     |是否启动框架层面心跳          |org.nutz.boot.starter.tio.server.TioServerStarter|
|48  |tio.heartbeatTimeout                    |no        |                    |120000    |心跳超时时间(单位:毫秒)       |org.nutz.boot.starter.tio.server.TioServerStarter|
|49  |tio.host                                |no        |                    |0.0.0.0   |tio监听的ip            |org.nutz.boot.starter.tio.server.TioServerStarter|
|50  |tio.name                                |no        |                    |NutzBoot GroupContext|上下文名称               |org.nutz.boot.starter.tio.server.TioServerStarter|
|51  |tio.port                                |no        |                    |9420      |tio监听端口             |org.nutz.boot.starter.tio.server.TioServerStarter|
|52  |tio.ssl.keyStore.password               |no        |                    |          |ssl keyStore密钥      |org.nutz.boot.starter.tio.server.TioServerStarter|
|53  |tio.ssl.keyStore.path                   |no        |                    |          |ssl keyStore路径      |org.nutz.boot.starter.tio.server.TioServerStarter|
[INFO ] 08:25:30.817 [main] org.nutz.ioc.impl.NutIoc - ... NutIoc init complete
[DEBUG] 08:25:30.819 [main] org.nutz.ioc.impl.ScopeContext - Save object 'appContext' to [app] 
[DEBUG] 08:25:30.820 [main] org.nutz.ioc.impl.ScopeContext - Save object 'conf' to [app] 
[DEBUG] 08:25:30.821 [main] org.nutz.ioc.impl.ScopeContext - Save object 'nbApp' to [app] 
[DEBUG] 08:25:30.822 [main] org.nutz.ioc.impl.ScopeContext - Save object 'counterService' to [app] 
[DEBUG] 08:25:30.832 [main] org.nutz.boot.starter.dubbo.DubboIocLoaderStarter - using dubbo configure from PropertiesProxy
[DEBUG] 08:25:30.853 [main] org.nutz.boot.AppContext - select random port=10889 for dubbo.protocol.port
[INFO ] 08:25:30.872 [main] com.alibaba.dubbo.common.logger.LoggerFactory - using logger: com.alibaba.dubbo.common.logger.slf4j.Slf4jLoggerAdapter
[DEBUG] 08:25:30.973 [main] org.nutz.ioc.impl.PropertiesProxy - no such field(name=qos.enable) at object class=com.alibaba.dubbo.config.ApplicationConfig, skip
[DEBUG] 08:25:31.258 [main] org.nutz.resource.Scans - Found 1 resource by src( org/nutz/integration/jedis/jedis.js ) , regex( ^(.+[.])(js|json)$ )
[DEBUG] 08:25:31.258 [main] org.nutz.ioc.loader.json.JsonLoader - loading [org/nutz/integration/jedis/jedis.js]
[DEBUG] 08:25:31.260 [main] org.nutz.ioc.loader.json.JsonLoader - Loaded 9 bean define from path=[org/nutz/integration/jedis/jedis.js] --> [redisService, jedisCluster, jedisClusterNodes, jedisClusterWrapper, pubSubService, jedisPoolConfig, jedisPool, jedisAgent, redis]
[INFO ] 08:25:31.264 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -  > scan 'org.nutz.plugins.wkcache'
[DEBUG] 08:25:31.267 [main] org.nutz.resource.Scans - Found 13 resource by src( org/nutz/plugins/wkcache/ ) , regex( ^.+[.]class$ )
[INFO ] 08:25:31.281 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'wkcacheRemoveEntryInterceptor           ' - org.nutz.plugins.wkcache.WkcacheRemoveEntryInterceptor
[INFO ] 08:25:31.284 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'wkcacheResultInterceptor                ' - org.nutz.plugins.wkcache.WkcacheResultInterceptor
[INFO ] 08:25:31.284 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'wkcacheUpdateInterceptor                ' - org.nutz.plugins.wkcache.WkcacheUpdateInterceptor
[INFO ] 08:25:31.292 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add 'wkcacheRemoveAllInterceptor             ' - org.nutz.plugins.wkcache.WkcacheRemoveAllInterceptor
[INFO ] 08:25:31.293 [main] org.nutz.ioc.loader.annotation.AnnotationIocLoader -    > add '$aop_wkcache                            ' - org.nutz.plugins.wkcache.WkcacheAopConfigure
[DEBUG] 08:25:31.294 [main] org.nutz.ioc.impl.NutIoc - Get 'dubboStarter'<class org.nutz.boot.starter.dubbo.DubboStarter>
[DEBUG] 08:25:31.295 [main] org.nutz.ioc.impl.NutIoc - Get '$aop_async'<interface org.nutz.ioc.aop.config.AopConfigration>
[DEBUG] 08:25:31.296 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=$aop_async
[DEBUG] 08:25:31.297 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject($aop_async) in AsyncAopIocLoader@49752459
[DEBUG] 08:25:31.297 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'$aop_async'<interface org.nutz.ioc.aop.config.AopConfigration>
[DEBUG] 08:25:31.353 [main] org.nutz.ioc.impl.ScopeContext - Save object '$aop_async' to [app] 
[DEBUG] 08:25:31.360 [main] org.nutz.ioc.impl.NutIoc - Get '$aop_wkcache'<interface org.nutz.ioc.aop.config.AopConfigration>
[DEBUG] 08:25:31.360 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=$aop_wkcache
[DEBUG] 08:25:31.361 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject($aop_wkcache) in AnnotationIocLoader(packages=[org.nutz.plugins.wkcache])
[DEBUG] 08:25:31.361 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'$aop_wkcache'<interface org.nutz.ioc.aop.config.AopConfigration>
[DEBUG] 08:25:31.361 [main] org.nutz.ioc.impl.ScopeContext - Save object '$aop_wkcache' to [app] 
[DEBUG] 08:25:31.364 [main] org.nutz.ioc.aop.SimpleAopMaker - Load AopConfigure for anno=org.nutz.ioc.aop.Aop by type=org.nutz.ioc.aop.config.impl.AnnotationAopConfigration
[DEBUG] 08:25:31.364 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=dubboStarter
[DEBUG] 08:25:31.364 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dubboStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:31.364 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'dubboStarter'<class org.nutz.boot.starter.dubbo.DubboStarter>
[DEBUG] 08:25:31.365 [main] org.nutz.ioc.impl.ScopeContext - Save object 'dubboStarter' to [app] 
[DEBUG] 08:25:31.365 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.dubbo.DubboStarter without AOP
[DEBUG] 08:25:31.383 [main] org.nutz.ioc.impl.NutIoc - Get 'nutDaoStarter'<class org.nutz.boot.starter.nutz.dao.NutDaoStarter>
[DEBUG] 08:25:31.384 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=nutDaoStarter
[DEBUG] 08:25:31.384 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nutDaoStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:31.384 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'nutDaoStarter'<class org.nutz.boot.starter.nutz.dao.NutDaoStarter>
[DEBUG] 08:25:31.384 [main] org.nutz.ioc.impl.ScopeContext - Save object 'nutDaoStarter' to [app] 
[DEBUG] 08:25:31.385 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.nutz.dao.NutDaoStarter without AOP
[DEBUG] 08:25:31.390 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<class org.nutz.ioc.impl.PropertiesProxy>
[DEBUG] 08:25:31.399 [main] org.nutz.ioc.impl.NutIoc - Get 'dataSourceStarter'<class org.nutz.boot.starter.jdbc.DataSourceStarter>
[DEBUG] 08:25:31.401 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=dataSourceStarter
[DEBUG] 08:25:31.401 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dataSourceStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:31.401 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'dataSourceStarter'<class org.nutz.boot.starter.jdbc.DataSourceStarter>
[DEBUG] 08:25:31.402 [main] org.nutz.ioc.impl.ScopeContext - Save object 'dataSourceStarter' to [app] 
[DEBUG] 08:25:31.402 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.jdbc.DataSourceStarter without AOP
[DEBUG] 08:25:31.415 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<class org.nutz.ioc.impl.PropertiesProxy>
[DEBUG] 08:25:31.415 [main] org.nutz.ioc.impl.NutIoc - Get 'druidWebStatFilterStarter'<class org.nutz.boot.starter.jdbc.DruidWebStatFilterStarter>
[DEBUG] 08:25:31.416 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=druidWebStatFilterStarter
[DEBUG] 08:25:31.416 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(druidWebStatFilterStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:31.416 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'druidWebStatFilterStarter'<class org.nutz.boot.starter.jdbc.DruidWebStatFilterStarter>
[DEBUG] 08:25:31.416 [main] org.nutz.ioc.impl.ScopeContext - Save object 'druidWebStatFilterStarter' to [app] 
[DEBUG] 08:25:31.416 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.jdbc.DruidWebStatFilterStarter without AOP
[DEBUG] 08:25:31.432 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<class org.nutz.ioc.impl.PropertiesProxy>
[DEBUG] 08:25:31.432 [main] org.nutz.ioc.impl.NutIoc - Get 'druidWebStatServletStarter'<class org.nutz.boot.starter.jdbc.DruidWebStatServletStarter>
[DEBUG] 08:25:31.432 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=druidWebStatServletStarter
[DEBUG] 08:25:31.432 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(druidWebStatServletStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:31.432 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'druidWebStatServletStarter'<class org.nutz.boot.starter.jdbc.DruidWebStatServletStarter>
[DEBUG] 08:25:31.432 [main] org.nutz.ioc.impl.ScopeContext - Save object 'druidWebStatServletStarter' to [app] 
[DEBUG] 08:25:31.433 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.jdbc.DruidWebStatServletStarter without AOP
[DEBUG] 08:25:31.439 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<class org.nutz.ioc.impl.PropertiesProxy>
[DEBUG] 08:25:31.439 [main] org.nutz.ioc.impl.NutIoc - Get 'sentinelStarter'<class org.nutz.boot.starter.sentinel.SentinelStarter>
[DEBUG] 08:25:31.439 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=sentinelStarter
[DEBUG] 08:25:31.439 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(sentinelStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:31.439 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'sentinelStarter'<class org.nutz.boot.starter.sentinel.SentinelStarter>
[DEBUG] 08:25:31.439 [main] org.nutz.ioc.impl.ScopeContext - Save object 'sentinelStarter' to [app] 
[DEBUG] 08:25:31.441 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.sentinel.SentinelStarter without AOP
[DEBUG] 08:25:31.464 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<class org.nutz.ioc.impl.PropertiesProxy>
[DEBUG] 08:25:31.464 [main] org.nutz.ioc.impl.NutIoc - Get 'tioServerStarter'<class org.nutz.boot.starter.tio.server.TioServerStarter>
[DEBUG] 08:25:31.465 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=tioServerStarter
[DEBUG] 08:25:31.465 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(tioServerStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:31.466 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'tioServerStarter'<class org.nutz.boot.starter.tio.server.TioServerStarter>
[DEBUG] 08:25:31.466 [main] org.nutz.ioc.impl.ScopeContext - Save object 'tioServerStarter' to [app] 
[DEBUG] 08:25:31.467 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.tio.server.TioServerStarter without AOP
[DEBUG] 08:25:31.490 [main] org.nutz.ioc.impl.NutIoc - Get 'appContext'<class org.nutz.boot.AppContext>
[DEBUG] 08:25:31.490 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<class org.nutz.ioc.impl.PropertiesProxy>
[DEBUG] 08:25:31.505 [main] org.nutz.ioc.impl.NutIoc - Get 'sentinelStarter'<interface org.nutz.boot.starter.ServerFace>
[DEBUG] 08:25:31.518 [main] org.nutz.ioc.impl.NutIoc - Get 'dubboStarter'<interface org.nutz.boot.starter.ServerFace>
[DEBUG] 08:25:31.518 [main] org.nutz.ioc.impl.NutIoc - Get 'logbackStarter'<interface org.nutz.boot.starter.ServerFace>
[DEBUG] 08:25:31.525 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=logbackStarter
[DEBUG] 08:25:31.525 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(logbackStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:31.526 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'logbackStarter'<interface org.nutz.boot.starter.ServerFace>
[DEBUG] 08:25:31.527 [main] org.nutz.ioc.impl.ScopeContext - Save object 'logbackStarter' to [app] 
[DEBUG] 08:25:31.527 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.logback.exts.LogbackStarter without AOP
[DEBUG] 08:25:31.539 [main] org.nutz.ioc.impl.NutIoc - Get 'loglevelProperty'<class org.nutz.boot.starter.logback.exts.loglevel.LoglevelProperty>
[DEBUG] 08:25:31.540 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=loglevelProperty
[DEBUG] 08:25:31.540 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelProperty) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:31.540 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'loglevelProperty'<class org.nutz.boot.starter.logback.exts.loglevel.LoglevelProperty>
[DEBUG] 08:25:31.543 [main] org.nutz.ioc.impl.ScopeContext - Save object 'loglevelProperty' to [app] 
[DEBUG] 08:25:31.544 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.logback.exts.loglevel.LoglevelProperty without AOP
[DEBUG] 08:25:31.580 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<class org.nutz.ioc.impl.PropertiesProxy>
[DEBUG] 08:25:31.581 [main] org.nutz.ioc.impl.NutIoc - Get 'tioServerStarter'<interface org.nutz.boot.starter.ServerFace>
[DEBUG] 08:25:31.582 [main] org.nutz.ioc.impl.NutIoc - Get 'dubboManager'<class org.nutz.integration.dubbo.DubboManager>
[DEBUG] 08:25:31.583 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=dubboManager
[DEBUG] 08:25:31.583 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dubboManager) in DubboConfigIocLoader@1388278453
[DEBUG] 08:25:31.583 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'dubboManager'<class org.nutz.integration.dubbo.DubboManager>
[DEBUG] 08:25:31.583 [main] org.nutz.ioc.impl.ScopeContext - Save object 'dubboManager' to [app] 
[DEBUG] 08:25:31.584 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.integration.dubbo.DubboManager without AOP
[DEBUG] 08:25:31.600 [main] org.nutz.ioc.impl.NutIoc - Get 'dubbo_iobjs'<>
[DEBUG] 08:25:31.600 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=dubbo_iobjs
[DEBUG] 08:25:31.601 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dubbo_iobjs) in DubboConfigIocLoader@1388278453
[DEBUG] 08:25:31.601 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'dubbo_iobjs'<>
[DEBUG] 08:25:31.601 [main] org.nutz.ioc.impl.ScopeContext - Save object 'dubbo_iobjs' to [app] 
[DEBUG] 08:25:31.604 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class java.util.HashMap without AOP
[DEBUG] 08:25:31.606 [main] org.nutz.integration.dubbo.DubboManager - dubbo obj count=6
[DEBUG] 08:25:31.607 [main] org.nutz.ioc.impl.NutIoc - Get 'dubboAnnotationBean'<class org.nutz.integration.dubbo.AnnotationBean>
[DEBUG] 08:25:31.607 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=dubboAnnotationBean
[DEBUG] 08:25:31.607 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dubboAnnotationBean) in DubboConfigIocLoader@1388278453
[DEBUG] 08:25:31.607 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'dubboAnnotationBean'<class org.nutz.integration.dubbo.AnnotationBean>
[DEBUG] 08:25:31.607 [main] org.nutz.ioc.impl.ScopeContext - Save object 'dubboAnnotationBean' to [app] 
[DEBUG] 08:25:31.608 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.integration.dubbo.AnnotationBean without AOP
[DEBUG] 08:25:31.608 [main] org.nutz.ioc.impl.NutIoc - Get 'dubbo_iobjs'<>
[DEBUG] 08:25:31.615 [main] org.nutz.resource.Scans - Found 1 resource by src( cn/wizzer/app/factory/commons/core/ ) , regex( ^.+[.]class$ )
[DEBUG] 08:25:31.633 [main] org.nutz.boot.starter.logback.exts.LogbackStarter - logback loglevel is starting...
[DEBUG] 08:25:31.634 [main] org.nutz.ioc.impl.NutIoc - Get 'loglevelService'<class org.nutz.boot.starter.logback.exts.loglevel.LoglevelService>
[DEBUG] 08:25:31.634 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=loglevelService
[DEBUG] 08:25:31.634 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelService) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:31.634 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'loglevelService'<class org.nutz.boot.starter.logback.exts.loglevel.LoglevelService>
[DEBUG] 08:25:31.634 [main] org.nutz.ioc.impl.ScopeContext - Save object 'loglevelService' to [app] 
[DEBUG] 08:25:31.634 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.logback.exts.loglevel.LoglevelService without AOP
[DEBUG] 08:25:31.670 [main] org.nutz.ioc.impl.NutIoc - Get 'loglevelProperty'<class org.nutz.boot.starter.logback.exts.loglevel.LoglevelProperty>
[DEBUG] 08:25:31.671 [main] org.nutz.ioc.impl.NutIoc - Get 'redisService'<class org.nutz.integration.jedis.RedisService>
[DEBUG] 08:25:31.671 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=redisService
[DEBUG] 08:25:31.671 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(redisService) in JsonLoader(paths=[org/nutz/integration/jedis/jedis.js])
[DEBUG] 08:25:31.671 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'redisService'<class org.nutz.integration.jedis.RedisService>
[DEBUG] 08:25:31.671 [main] org.nutz.ioc.impl.ScopeContext - Save object 'redisService' to [app] 
[DEBUG] 08:25:31.802 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.integration.jedis.RedisService without AOP
[DEBUG] 08:25:32.329 [main] org.nutz.ioc.impl.NutIoc - Get 'jedisAgent'<>
[DEBUG] 08:25:32.329 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=jedisAgent
[DEBUG] 08:25:32.329 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(jedisAgent) in JsonLoader(paths=[org/nutz/integration/jedis/jedis.js])
[DEBUG] 08:25:32.329 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'jedisAgent'<>
[DEBUG] 08:25:32.329 [main] org.nutz.ioc.impl.ScopeContext - Save object 'jedisAgent' to [app] 
[DEBUG] 08:25:32.330 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.integration.jedis.JedisAgent without AOP
[DEBUG] 08:25:32.339 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.339 [main] org.nutz.ioc.impl.NutIoc - Get 'pubSubService'<class org.nutz.integration.jedis.pubsub.PubSubService>
[DEBUG] 08:25:32.339 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=pubSubService
[DEBUG] 08:25:32.339 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(pubSubService) in JsonLoader(paths=[org/nutz/integration/jedis/jedis.js])
[DEBUG] 08:25:32.340 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'pubSubService'<class org.nutz.integration.jedis.pubsub.PubSubService>
[DEBUG] 08:25:32.340 [main] org.nutz.ioc.impl.ScopeContext - Save object 'pubSubService' to [app] 
[DEBUG] 08:25:32.342 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.integration.jedis.pubsub.PubSubService without AOP
[DEBUG] 08:25:32.345 [main] org.nutz.ioc.impl.NutIoc - Get 'jedisAgent'<>
[DEBUG] 08:25:32.346 [main] org.nutz.ioc.impl.NutIoc - Get 'loglevelHeartbeatThread'<class org.nutz.boot.starter.logback.exts.loglevel.LoglevelHeartbeatThread>
[DEBUG] 08:25:32.346 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=loglevelHeartbeatThread
[DEBUG] 08:25:32.346 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelHeartbeatThread) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.346 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'loglevelHeartbeatThread'<class org.nutz.boot.starter.logback.exts.loglevel.LoglevelHeartbeatThread>
[DEBUG] 08:25:32.346 [main] org.nutz.ioc.impl.ScopeContext - Save object 'loglevelHeartbeatThread' to [app] 
[DEBUG] 08:25:32.346 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.logback.exts.loglevel.LoglevelHeartbeatThread without AOP
[DEBUG] 08:25:32.364 [main] org.nutz.ioc.impl.NutIoc - Get 'loglevelProperty'<class org.nutz.boot.starter.logback.exts.loglevel.LoglevelProperty>
[DEBUG] 08:25:32.366 [main] org.nutz.ioc.impl.NutIoc - Get 'loglevelService'<class org.nutz.boot.starter.logback.exts.loglevel.LoglevelService>
[DEBUG] 08:25:32.382 [main] org.nutz.ioc.impl.NutIoc - Get 'jedisPool'<class redis.clients.util.Pool>
[DEBUG] 08:25:32.386 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=jedisPool
[DEBUG] 08:25:32.386 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(jedisPool) in JsonLoader(paths=[org/nutz/integration/jedis/jedis.js])
[DEBUG] 08:25:32.387 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'jedisPool'<class redis.clients.util.Pool>
[DEBUG] 08:25:32.387 [main] org.nutz.ioc.impl.ScopeContext - Save object 'jedisPool' to [app] 
[DEBUG] 08:25:32.414 [main] org.nutz.ioc.impl.NutIoc - Get 'jedisPoolConfig'<>
[DEBUG] 08:25:32.416 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=jedisPoolConfig
[DEBUG] 08:25:32.417 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(jedisPoolConfig) in JsonLoader(paths=[org/nutz/integration/jedis/jedis.js])
[DEBUG] 08:25:32.418 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'jedisPoolConfig'<>
[DEBUG] 08:25:32.418 [main] org.nutz.ioc.impl.ScopeContext - Save object 'jedisPoolConfig' to [app] 
[DEBUG] 08:25:32.420 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class redis.clients.jedis.JedisPoolConfig without AOP
[DEBUG] 08:25:32.420 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.464 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.484 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.487 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.488 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.488 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.488 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.490 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class redis.clients.jedis.JedisPool without AOP
[DEBUG] 08:25:32.492 [main] org.nutz.ioc.impl.NutIoc - Get 'jedisPoolConfig'<>
[DEBUG] 08:25:32.493 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.493 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.495 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.495 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.496 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<>
[DEBUG] 08:25:32.670 [main] org.nutz.boot.starter.tio.server.TioServerStarter - init AioServer ...
[DEBUG] 08:25:32.671 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREPEATABLE_READ) in TransIocLoader@249034932
[DEBUG] 08:25:32.671 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txSERIALIZABLE) in TransIocLoader@249034932
[DEBUG] 08:25:32.671 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txNONE) in TransIocLoader@249034932
[DEBUG] 08:25:32.672 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREAD_UNCOMMITTED) in TransIocLoader@249034932
[DEBUG] 08:25:32.672 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREAD_COMMITTED) in TransIocLoader@249034932
[DEBUG] 08:25:32.672 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject($aop_async) in AsyncAopIocLoader@49752459
[DEBUG] 08:25:32.672 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dubboRpcFactoryMainLauncher) in AnnotationIocLoader(packages=[cn.wizzer.app.factory.commons.core])
[DEBUG] 08:25:32.672 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelProperty) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.672 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerAioListener) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.672 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(sqlManager) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.673 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerAioHandler) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.673 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(daoCacheSerializer) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.673 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(daoCacheInterceptor) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.673 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(sentinelStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.673 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dao) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.673 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(logbackStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.674 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelHeartbeatThread) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.674 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerUdphandler) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.674 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nutDaoStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.674 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(druidWebStatFilterStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.674 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelService) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.674 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(udpServerConf) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.674 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dataSourceStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.675 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(druidWebStatServletStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.675 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(aioServer) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.675 [main] org.nutz.ioc.impl.NutIoc - Get 'aioServer'<class org.tio.server.TioServer>
[DEBUG] 08:25:32.675 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=aioServer
[DEBUG] 08:25:32.675 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(aioServer) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.675 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'aioServer'<class org.tio.server.TioServer>
[DEBUG] 08:25:32.675 [main] org.nutz.ioc.impl.ScopeContext - Save object 'aioServer' to [app] 
[DEBUG] 08:25:32.675 [main] org.nutz.ioc.impl.NutIoc - Get 'serverGroupContext'<class org.tio.server.ServerGroupContext>
[DEBUG] 08:25:32.675 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=serverGroupContext
[DEBUG] 08:25:32.676 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(serverGroupContext) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.676 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'serverGroupContext'<class org.tio.server.ServerGroupContext>
[DEBUG] 08:25:32.676 [main] org.nutz.ioc.impl.ScopeContext - Save object 'serverGroupContext' to [app] 
[DEBUG] 08:25:32.676 [main] org.nutz.ioc.val.ReferTypeValue - name=serverAioHandler not found, search for type=org.tio.server.intf.ServerAioHandler
[DEBUG] 08:25:32.676 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREPEATABLE_READ) in TransIocLoader@249034932
[DEBUG] 08:25:32.676 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txSERIALIZABLE) in TransIocLoader@249034932
[DEBUG] 08:25:32.677 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txNONE) in TransIocLoader@249034932
[DEBUG] 08:25:32.677 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREAD_UNCOMMITTED) in TransIocLoader@249034932
[DEBUG] 08:25:32.677 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREAD_COMMITTED) in TransIocLoader@249034932
[DEBUG] 08:25:32.677 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject($aop_async) in AsyncAopIocLoader@49752459
[DEBUG] 08:25:32.677 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dubboRpcFactoryMainLauncher) in AnnotationIocLoader(packages=[cn.wizzer.app.factory.commons.core])
[DEBUG] 08:25:32.677 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelProperty) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.677 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerAioListener) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.677 [main] org.nutz.ioc.impl.NutIoc - Get 'nopServerAioListener'<interface org.tio.server.intf.ServerAioHandler>
[DEBUG] 08:25:32.678 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=nopServerAioListener
[DEBUG] 08:25:32.678 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerAioListener) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.678 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'nopServerAioListener'<interface org.tio.server.intf.ServerAioHandler>
[DEBUG] 08:25:32.678 [main] org.nutz.ioc.impl.ScopeContext - Save object 'nopServerAioListener' to [app] 
[DEBUG] 08:25:32.680 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.tio.server.TioServerStarter$NopServerAioXXX without AOP
[DEBUG] 08:25:32.681 [main] org.nutz.ioc.impl.NutIoc - Get 'tioServerStarter'<>
[DEBUG] 08:25:32.681 [main] org.nutz.ioc.val.ReferTypeValue - name=serverAioListener not found, search for type=org.tio.server.intf.ServerAioListener
[DEBUG] 08:25:32.681 [main] org.nutz.ioc.impl.NutIoc - Get 'nopServerAioListener'<interface org.tio.server.intf.ServerAioListener>
[DEBUG] 08:25:32.689 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.tio.server.ServerGroupContext without AOP
[DEBUG] 08:25:32.689 [main] org.nutz.ioc.val.ReferTypeValue - name=serverAioHandler not found, search for type=org.tio.server.intf.ServerAioHandler
[DEBUG] 08:25:32.689 [main] org.nutz.ioc.impl.NutIoc - Get 'nopServerAioListener'<interface org.tio.server.intf.ServerAioHandler>
[DEBUG] 08:25:32.689 [main] org.nutz.ioc.val.ReferTypeValue - name=serverAioListener not found, search for type=org.tio.server.intf.ServerAioListener
[DEBUG] 08:25:32.690 [main] org.nutz.ioc.impl.NutIoc - Get 'nopServerAioListener'<interface org.tio.server.intf.ServerAioListener>
[DEBUG] 08:25:32.691 [main] org.nutz.ioc.impl.NutIoc - Get 'tioServerStarter'<>
[DEBUG] 08:25:32.755 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.tio.server.TioServer without AOP
[DEBUG] 08:25:32.755 [main] org.nutz.ioc.impl.NutIoc - Get 'serverGroupContext'<class org.tio.server.ServerGroupContext>
[DEBUG] 08:25:32.755 [main] org.nutz.ioc.impl.NutIoc - Get 'tioServerStarter'<>
[INFO ] 08:25:32.797 [main] org.tio.server.TioServer - 
|----------------------------------------------------------------------------------------|
| Tio gitee address : https://gitee.com/tywo45/t-io                                      |
| Tio site address  : https://t-io.org/                                                  |
| Tio version       : 3.1.8.v20180818-RELEASE                                            |
| ---------------------------------------------------------------------------------------|
| GroupContext name : NutzBoot GroupContext                                              |
| Started at        : 2019-03-20 08:25:32                                                |
| Listen on         : 0.0.0.0:9998                                                       |
| Main Class        : cn.wizzer.app.factory.commons.core.DubboRpcFactoryMainLauncher     |
| Jvm start time    : 4811 ms                                                            |
| Tio start time    : 42 ms                                                              |
| Pid               : 976                                                                |
|----------------------------------------------------------------------------------------|

[DEBUG] 08:25:32.797 [main] org.nutz.boot.starter.tio.server.TioServerStarter - init UdpServer ...
[DEBUG] 08:25:32.798 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREPEATABLE_READ) in TransIocLoader@249034932
[DEBUG] 08:25:32.798 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txSERIALIZABLE) in TransIocLoader@249034932
[DEBUG] 08:25:32.798 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txNONE) in TransIocLoader@249034932
[DEBUG] 08:25:32.798 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREAD_UNCOMMITTED) in TransIocLoader@249034932
[DEBUG] 08:25:32.798 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREAD_COMMITTED) in TransIocLoader@249034932
[DEBUG] 08:25:32.798 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject($aop_async) in AsyncAopIocLoader@49752459
[DEBUG] 08:25:32.798 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dubboRpcFactoryMainLauncher) in AnnotationIocLoader(packages=[cn.wizzer.app.factory.commons.core])
[DEBUG] 08:25:32.798 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelProperty) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerAioListener) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(sqlManager) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerAioHandler) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(daoCacheSerializer) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(daoCacheInterceptor) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(sentinelStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dao) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(logbackStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelHeartbeatThread) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerUdphandler) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nutDaoStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.799 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(druidWebStatFilterStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.800 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelService) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.800 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(udpServerConf) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.800 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dataSourceStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.800 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(druidWebStatServletStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.800 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(aioServer) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.800 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dubboStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.801 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(udpServer) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.801 [main] org.nutz.ioc.impl.NutIoc - Get 'udpServer'<class org.tio.core.udp.UdpServer>
[DEBUG] 08:25:32.801 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=udpServer
[DEBUG] 08:25:32.801 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(udpServer) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.801 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'udpServer'<class org.tio.core.udp.UdpServer>
[DEBUG] 08:25:32.801 [main] org.nutz.ioc.impl.ScopeContext - Save object 'udpServer' to [app] 
[DEBUG] 08:25:32.801 [main] org.nutz.ioc.impl.NutIoc - Get 'udpServerConf'<class org.tio.core.udp.UdpServerConf>
[DEBUG] 08:25:32.801 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=udpServerConf
[DEBUG] 08:25:32.802 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(udpServerConf) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.802 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'udpServerConf'<class org.tio.core.udp.UdpServerConf>
[DEBUG] 08:25:32.802 [main] org.nutz.ioc.impl.ScopeContext - Save object 'udpServerConf' to [app] 
[DEBUG] 08:25:32.802 [main] org.nutz.ioc.val.ReferTypeValue - name=udpHandler not found, search for type=org.tio.core.udp.intf.UdpHandler
[DEBUG] 08:25:32.802 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREPEATABLE_READ) in TransIocLoader@249034932
[DEBUG] 08:25:32.802 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txSERIALIZABLE) in TransIocLoader@249034932
[DEBUG] 08:25:32.803 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txNONE) in TransIocLoader@249034932
[DEBUG] 08:25:32.803 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREAD_UNCOMMITTED) in TransIocLoader@249034932
[DEBUG] 08:25:32.803 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(txREAD_COMMITTED) in TransIocLoader@249034932
[DEBUG] 08:25:32.803 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject($aop_async) in AsyncAopIocLoader@49752459
[DEBUG] 08:25:32.803 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dubboRpcFactoryMainLauncher) in AnnotationIocLoader(packages=[cn.wizzer.app.factory.commons.core])
[DEBUG] 08:25:32.804 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelProperty) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.804 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerAioListener) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.804 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(sqlManager) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.804 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerAioHandler) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.804 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(daoCacheSerializer) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.805 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(daoCacheInterceptor) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.805 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(sentinelStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.805 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dao) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.805 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(logbackStarter) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.805 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(loglevelHeartbeatThread) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.806 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerUdphandler) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.806 [main] org.nutz.ioc.impl.NutIoc - Get 'nopServerUdphandler'<interface org.tio.core.udp.intf.UdpHandler>
[DEBUG] 08:25:32.806 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=nopServerUdphandler
[DEBUG] 08:25:32.806 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(nopServerUdphandler) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.806 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'nopServerUdphandler'<interface org.tio.core.udp.intf.UdpHandler>
[DEBUG] 08:25:32.807 [main] org.nutz.ioc.impl.ScopeContext - Save object 'nopServerUdphandler' to [app] 
[DEBUG] 08:25:32.808 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.boot.starter.tio.server.TioServerStarter$NopServerUdpXXX without AOP
[DEBUG] 08:25:32.809 [main] org.nutz.ioc.impl.NutIoc - Get 'tioServerStarter'<>
[DEBUG] 08:25:32.809 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.tio.core.udp.UdpServerConf without AOP
[DEBUG] 08:25:32.809 [main] org.nutz.ioc.val.ReferTypeValue - name=udpHandler not found, search for type=org.tio.core.udp.intf.UdpHandler
[DEBUG] 08:25:32.810 [main] org.nutz.ioc.impl.NutIoc - Get 'nopServerUdphandler'<interface org.tio.core.udp.intf.UdpHandler>
[DEBUG] 08:25:32.810 [main] org.nutz.ioc.impl.NutIoc - Get 'tioServerStarter'<>
[DEBUG] 08:25:32.811 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.tio.core.udp.UdpServer without AOP
[DEBUG] 08:25:32.811 [main] org.nutz.ioc.impl.NutIoc - Get 'udpServerConf'<class org.tio.core.udp.UdpServerConf>
[DEBUG] 08:25:32.812 [main] org.nutz.ioc.impl.NutIoc - Get 'tioServerStarter'<>
[INFO ] 08:25:32.821 [tio-udp-server-listen] org.tio.core.udp.UdpServer - started tio udp server: 0.0.0.0:9998
[DEBUG] 08:25:32.826 [main] org.nutz.ioc.impl.NutIoc - Get 'dubboRpcFactoryMainLauncher'<class cn.wizzer.app.factory.commons.core.DubboRpcFactoryMainLauncher>
[DEBUG] 08:25:32.827 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=dubboRpcFactoryMainLauncher
[DEBUG] 08:25:32.827 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dubboRpcFactoryMainLauncher) in AnnotationIocLoader(packages=[cn.wizzer.app.factory.commons.core])
[DEBUG] 08:25:32.827 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'dubboRpcFactoryMainLauncher'<class cn.wizzer.app.factory.commons.core.DubboRpcFactoryMainLauncher>
[DEBUG] 08:25:32.827 [main] org.nutz.ioc.impl.ScopeContext - Save object 'dubboRpcFactoryMainLauncher' to [app] 
[DEBUG] 08:25:32.827 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class cn.wizzer.app.factory.commons.core.DubboRpcFactoryMainLauncher without AOP
[DEBUG] 08:25:32.831 [main] org.nutz.ioc.impl.NutIoc - Get 'dao'<interface org.nutz.dao.Dao>
[DEBUG] 08:25:32.831 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=dao
[DEBUG] 08:25:32.832 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dao) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.832 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'dao'<interface org.nutz.dao.Dao>
[DEBUG] 08:25:32.832 [main] org.nutz.ioc.impl.ScopeContext - Save object 'dao' to [app] 
[DEBUG] 08:25:32.832 [main] org.nutz.ioc.impl.NutIoc - Get 'dataSource'<interface javax.sql.DataSource>
[DEBUG] 08:25:32.832 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=dataSource
[DEBUG] 08:25:32.832 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(dataSource) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.832 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'dataSource'<interface javax.sql.DataSource>
[DEBUG] 08:25:32.833 [main] org.nutz.ioc.impl.ScopeContext - Save object 'dataSource' to [app] 
[DEBUG] 08:25:32.833 [main] org.nutz.ioc.impl.NutIoc - Get 'dataSourceStarter'<>
[DEBUG] 08:25:32.833 [main] org.nutz.ioc.impl.NutIoc - Get 'druidDataSource'<interface javax.sql.DataSource>
[DEBUG] 08:25:32.833 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=druidDataSource
[DEBUG] 08:25:32.833 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(druidDataSource) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.834 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'druidDataSource'<interface javax.sql.DataSource>
[DEBUG] 08:25:32.834 [main] org.nutz.ioc.impl.ScopeContext - Save object 'druidDataSource' to [app] 
[DEBUG] 08:25:32.834 [main] org.nutz.ioc.impl.NutIoc - Get 'dataSourceStarter'<>
[DEBUG] 08:25:32.905 [main] org.nutz.ioc.impl.NutIoc - Get 'sqlManager'<interface org.nutz.dao.SqlManager>
[DEBUG] 08:25:32.906 [main] org.nutz.ioc.impl.NutIoc - 	 >> Load definition name=sqlManager
[DEBUG] 08:25:32.906 [main] org.nutz.ioc.loader.combo.ComboIocLoader - Found IocObject(sqlManager) in AnnotationIocLoader(packages=[org.nutz.boot.starter])
[DEBUG] 08:25:32.906 [main] org.nutz.ioc.impl.NutIoc - 	 >> Make...'sqlManager'<interface org.nutz.dao.SqlManager>
[DEBUG] 08:25:32.906 [main] org.nutz.ioc.impl.ScopeContext - Save object 'sqlManager' to [app] 
[DEBUG] 08:25:32.906 [main] org.nutz.ioc.impl.NutIoc - Get 'nutDaoStarter'<>
[DEBUG] 08:25:32.919 [main] org.nutz.ioc.aop.impl.DefaultMirrorFactory - Load class org.nutz.dao.impl.NutDao without AOP
[DEBUG] 08:25:32.919 [main] org.nutz.ioc.impl.NutIoc - Get 'dataSource'<interface javax.sql.DataSource>
[DEBUG] 08:25:32.919 [main] org.nutz.ioc.impl.NutIoc - Get 'sqlManager'<interface org.nutz.dao.SqlManager>
[DEBUG] 08:25:32.919 [main] org.nutz.ioc.impl.NutIoc - Get 'nutDaoStarter'<>
[DEBUG] 08:25:33.024 [main] org.nutz.dao.jdbc.Jdbcs - Jdbcs init complete
[INFO ] 08:25:33.025 [main] org.nutz.dao.jdbc.Jdbcs - Get Connection from DataSource for JdbcExpert, if you lock at here, check your database server and configure
[INFO ] 08:25:33.072 [main] com.alibaba.druid.pool.DruidDataSource - {dataSource-1} inited
[DEBUG] 08:25:33.442 [main] org.nutz.dao.impl.DaoSupport - select expert : org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert
[DEBUG] 08:25:33.447 [main] org.nutz.dao.impl.DaoSupport - JDBC Driver --> mysql-connector-java-5.1.47 ( Revision: fe1903b1ecb4a96a917f7ed3190d80c049b1de29 )
[DEBUG] 08:25:33.448 [main] org.nutz.dao.impl.DaoSupport - JDBC Name   --> MySQL Connector Java
[DEBUG] 08:25:33.448 [main] org.nutz.dao.impl.DaoSupport - JDBC URL    --> jdbc:mysql://127.0.0.1:3306/factory?useUnicode=true&characterEncoding=utf8&useSSL=false&allowPublicKeyRetrieval=true
[DEBUG] 08:25:33.466 [main] org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_client=utf8mb4
[DEBUG] 08:25:33.466 [main] org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_connection=utf8mb4
[DEBUG] 08:25:33.467 [main] org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_database=utf8mb4
[DEBUG] 08:25:33.467 [main] org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_filesystem=binary
[DEBUG] 08:25:33.467 [main] org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_results=
[DEBUG] 08:25:33.467 [main] org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_server=utf8mb4
[DEBUG] 08:25:33.467 [main] org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_set_system=utf8
[DEBUG] 08:25:33.468 [main] org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : character_sets_dir=/usr/local/Cellar/mysql/8.0.15/share/mysql/charsets/
[DEBUG] 08:25:33.470 [main] org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : binlog_format=ROW
[DEBUG] 08:25:33.471 [main] org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : database=factory
[DEBUG] 08:25:33.471 [main] org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert - Mysql : user=root@localhost
[DEBUG] 08:25:33.490 [main] org.nutz.dao.impl.DaoSupport - Database info --> MYSQL:[MySQL - 8.0.15]
[DEBUG] 08:25:33.495 [main] org.nutz.resource.Scans - Found 0 resource by src( sqls/ ) , regex( .(sql|sqlx|sqls)$ )
[DEBUG] 08:25:33.495 [main] org.nutz.dao.impl.DaoSupport - SqlManager Sql count=0
[DEBUG] 08:25:33.496 [main] org.nutz.ioc.impl.NutIoc - Get 'conf'<class org.nutz.ioc.impl.PropertiesProxy>
[INFO ] 08:25:33.496 [main] org.nutz.boot.NbApp - wk-nb-dubbo-factory started : 4694ms
[INFO ] 08:25:42.758 [tio-timer-checkheartbeat-1] org.tio.server.ServerGroupContext - NutzBoot GroupContext, 用户取消了框架层面的心跳检测,如果业务需要,请用户自己去完成心跳检测

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://maven.apache.org/POM/4.0.0"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>wk-app</artifactId>
        <groupId>cn.wizzer.app</groupId>
        <version>5.2.0</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
    <packaging>jar</packaging>
    <artifactId>wk-nb-service-factory</artifactId>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <commons-lang3.version>3.7</commons-lang3.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>cn.wizzer</groupId>
            <artifactId>wk-framework</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>cn.wizzer.app</groupId>
            <artifactId>wk-model</artifactId>
            <version>${project.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>cn.wizzer.app</groupId>
                    <artifactId>wk-code-generator-nb</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>cn.wizzer.app</groupId>
            <artifactId>wk-common</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>org.nutz</groupId>
            <artifactId>nutzboot-core</artifactId>
            <version>${nutzboot.version}</version>
        </dependency>
        <dependency>
            <groupId>org.nutz</groupId>
            <artifactId>nutzboot-starter-dubbo</artifactId>
            <version>${nutzboot.version}</version>
        </dependency>
        <dependency>
            <groupId>com.101tec</groupId>
            <artifactId>zkclient</artifactId>
            <version>${zkclient.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-log4j12</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>log4j</groupId>
                    <artifactId>log4j</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.nutz</groupId>
            <artifactId>nutzboot-starter-nutz-dao</artifactId>
            <version>${nutzboot.version}</version>
        </dependency>
        <dependency>
            <groupId>org.nutz</groupId>
            <artifactId>nutzboot-starter-jdbc</artifactId>
            <version>${nutzboot.version}</version>
        </dependency>
        <dependency>
            <groupId>org.nutz</groupId>
            <artifactId>nutzboot-starter-redis</artifactId>
            <version>${nutzboot.version}</version>
        </dependency>
        <dependency>
            <groupId>org.nutz</groupId>
            <artifactId>nutzboot-starter-wkcache</artifactId>
            <version>${nutzboot.version}</version>
        </dependency>
        <dependency>
            <groupId>org.nutz</groupId>
            <artifactId>nutzboot-starter-sentinel-dubbo</artifactId>
            <version>${nutzboot.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>io.netty</groupId>
                    <artifactId>netty</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.nutz</groupId>
            <artifactId>nutzboot-starter-logback-exts</artifactId>
            <version>${nutzboot.version}</version>
        </dependency>
        <dependency>
            <groupId>org.nutz</groupId>
            <artifactId>nutzboot-starter-test-junit4</artifactId>
            <version>${nutzboot.version}</version>
        </dependency>

        <dependency>
            <groupId>org.nutz</groupId>
            <artifactId>nutzboot-starter-tio</artifactId>
            <version>${nutzboot.version}</version>
        </dependency>
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>4.5.0</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>${druid.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>com.alibaba</groupId>
                    <artifactId>jconsole</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>com.alibaba</groupId>
                    <artifactId>tools</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>${mysql-connector-java.version}</version>
        </dependency>
        <!--<dependency>-->
        <!--<groupId>com.oracle</groupId>-->
        <!--<artifactId>classes12</artifactId>-->
        <!--<version>10.2.0.2.0</version>-->
        <!--<scope>system</scope>-->
        <!--<systemPath>D://oracle/product/10.2.0/db_1/jdbc/lib/classes12.jar</systemPath>-->
        <!--</dependency>-->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>${commons-lang3.version}</version>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
            <version>${logback.version}</version>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>${logback.version}</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>${slf4j.version}</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.7.0</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <compilerArgs>
                        <arg>-parameters</arg>
                    </compilerArgs>
                    <useIncrementalCompilation>false</useIncrementalCompilation>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>3.0.1</version>
                <configuration>
                    <encoding>UTF-8</encoding>
                    <charset>UTF-8</charset>
                    <docencoding>UTF-8</docencoding>
                </configuration>
                <executions>
                    <execution>
                        <id>attach-javadocs</id>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.nutz.boot</groupId>
                <artifactId>nutzboot-maven-plugin</artifactId>
                <version>${nutzboot.version}</version>
            </plugin>
        </plugins>
    </build>

</project>
nutz.application.name=wk-nb-dubbo-factory
server.port=0
jdbc.url=jdbc:mysql://127.0.0.1:3306/factory?useUnicode=true&characterEncoding=utf8&useSSL=false&allowPublicKeyRetrieval=true
jdbc.username=root
jdbc.password=123456
jdbc.validationQuery=select 1
jdbc.maxActive=10
jdbc.testWhileIdle=true
jdbc.connectionProperties=druid.stat.slowSqlMillis=2000
jdbc.defaultAutoCommit=true
#jdbc.url=jdbc:oracle:thin:@//localhost:1521/orcl
#jdbc.username=nutzwk
#jdbc.password=pass
#jdbc.validationQuery=select 1 from dual
#jdbc.maxActive=10
#jdbc.testWhileIdle=true
#jdbc.connectionProperties=druid.stat.slowSqlMillis=2000
#jdbc.defaultAutoCommit=true
#dubbo.application.name 若名称不写则取 nutz.application.name
dubbo.registry.address=zookeeper://127.0.0.1:2181
dubbo.protocol.name=dubbo
#默认线程数 或 dubbo.provider.threads=200
dubbo.protocol.threads=200
#随机端口
dubbo.protocol.port=0
dubbo.annotation.package=cn.wizzer.app
#默认关闭QOS服务
dubbo.application.qos.enable=false
#流控使用说明 https://github.com/nutzam/nutzboot/tree/dev/nutzboot-starter/nutzboot-starter-sentinel-dubbo
#是否启用 sentinel 客户端
sentinel.enabled=false
#控制台地址
sentinel.csp.sentinel.dashboard.server=localhost:9090
#sentinel客户端端口,0为随机端口
#注意:使用集群流控功能时,重启jar后因端口变动导致规则失效,建议使用固定端口号
sentinel.csp.sentinel.api.port=0
#sentinel客户端通信间隔毫秒数
sentinel.csp.sentinel.heartbeat.interval.ms=3000
#sentinel客户端本地IP地址,不设置则自动获取
sentinel.csp.sentinel.heartbeat.client.ip=
#规则存储的key名
sentinel.rulekey=sentinel:nutzwk-nb-factory
#规则存储的发布订阅频道名
sentinel.channel=sentinel-nb-factory
#动态修改日志等级
logback.exts.loglevel.enabled=true
#心跳间隔(单位:秒)
logback.exts.loglevel.heartbeat=10
#为应用管理提供支持,启用获取部署版本号,结合守护进程使用
logback.exts.deploy.enabled=false
#为应用管理提供支持,部署根路径
logback.exts.deploy.root=./data/nutzwk
#server.file.path=./log/data/
tio.port=9998

package cn.wizzer.app.factory.tio;

import org.nutz.ioc.impl.PropertiesProxy;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.lang.Files;
import org.nutz.lang.Times;
import org.nutz.log.Log;
import org.nutz.log.Logs;
import org.tio.core.ChannelContext;
import org.tio.core.GroupContext;
import org.tio.core.exception.AioDecodeException;
import org.tio.core.intf.Packet;
import org.tio.server.intf.ServerAioHandler;
import org.tio.utils.json.Json;

import java.io.File;
import java.nio.ByteBuffer;
import java.util.Date;

@IocBean(create="init")
public class SimpleHandler implements ServerAioHandler {
    private Log log = Logs.get();
    public void init() {

        log.debug("SimpleHandler init complete");
    }

    @Inject
    private PropertiesProxy conf;

    /**
     * 解码:将接受到的ByteBuffer对象解码成我们可是识别的业务包
     * 总的消息结构:消息头+消息体
     * 消息头结构: 4个字节,消息体的长度
     * 消息体结构: 数据json串的byte[]
     *
     * @param buffer
     * @param channelContext
     * @return
     * @throws AioDecodeException
     */
    public Packet decode(ByteBuffer buffer, int limit, int position, int readableLength, ChannelContext channelContext) throws AioDecodeException {
        int realableLength = limit - position;
        //收到的数据组不了业务包,则返回null以告诉框架数据不够
        if (realableLength < SimplePacket.HEADER_LENGTH) {
            return null;
        }

        //读取消息体的长度
        int bodyLength = buffer.getInt();
        if (bodyLength < 0) {
            throw new AioDecodeException("bodyLength [" + bodyLength + "] is not right, remote:" + channelContext.getClientNode());
        }
        //计算本次需要的数据长度
        int needLength = SimplePacket.HEADER_LENGTH + bodyLength;
        //收到的数据是否足够组包
        int isDateEnough = realableLength - needLength;
        if (isDateEnough < 0) {
            return null;
        } else {//组包成功
            SimplePacket pack = new SimplePacket();
            if (bodyLength > 0) {
                byte[] dist = new byte[bodyLength];
                buffer.get(dist);
                pack.setBody(dist);
            }
            return pack;
        }
    }

    /**
     * 编码:将业务数据编码成可以发送的ByteBuffer
     * 总的消息结构: 消息头+ 消息体
     * 消息头结构:4个字节,存储消息体的长度
     * 消息体结构:业务json串的byte[]
     *
     * @param packet
     * @param groupContext
     * @param channelContext
     * @return
     */
    public ByteBuffer encode(Packet packet, GroupContext groupContext, ChannelContext channelContext) {
        SimplePacket helloPacket = (SimplePacket) packet;
        byte[] body = helloPacket.getBody();
        int bodyLen = 0;
        if (body != null) {
            bodyLen = body.length;
        }

        //Bytebuffer总长度 = 消息头+消息体的长度
        int allLen = SimplePacket.HEADER_LENGTH + bodyLen;
        //创建新的Bytebuffer
        ByteBuffer buf = ByteBuffer.allocate(allLen);
        //设置字节序
        buf.order(groupContext.getByteOrder());
        //写入消息头
        buf.putInt(bodyLen);
        //写入消息体
        if (body != null) {
            buf.put(body);
        }
        return buf;
    }

    //处理消息
    public void handler(Packet packet, ChannelContext channelContext) throws Exception {
        SimplePacket pack = (SimplePacket) packet;
        byte[] body = pack.getBody();
        if (body != null) {
            String s = new String(body, SimplePacket.CHARSET);
            System.out.println("接受到客户端消息:" + s);
            SimplePacket resp = new SimplePacket();
            // resp.setBody(("我收到了您的消息:"+s).getBytes());
            // Tio.send(channelContext,resp);
        }


        String day = Times.format("yyyyMMdd", new Date());
        File file = new File(conf.get("server.file.path", "./") + day + ".log");
        Files.createFileIfNoExists(file);
        Files.appendWrite(file, Json.toJson(pack) + "\r\n");


        String str = "";
        if (body != null)
            str = new String(body, SimplePacket.CHARSET);

        //Meter_conf meter_conf = Json.toBean(str, Meter_conf.class);


        //meterConfServiceImpl.insert(meter_conf);

    }
}

package cn.wizzer.app.factory.tio;

import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.log.Log;
import org.nutz.log.Logs;
import org.tio.core.ChannelContext;
import org.tio.core.intf.Packet;
import org.tio.server.intf.ServerAioListener;

@IocBean(create="init")
public class SimpleListener implements ServerAioListener {
    private Log log = Logs.get();
    public void init() {

        log.debug("SimpleListener init complete");
    }


    /**
     * 建链后触发本方法,注:建链不一定成功,需要关注参数isConnected
     *
     * @param channelContext
     * @param isConnected    是否连接成功,true:表示连接成功,false:表示连接失败
     * @param isReconnect    是否是重连, true: 表示这是重新连接,false: 表示这是第一次连接
     * @author tanyaowu
     */
    @Override
    public void onAfterConnected(ChannelContext channelContext, boolean isConnected, boolean isReconnect) throws Exception {

        log.infof("建链后触发onAfterConnected");
    }

    /**
     * 解码成功后触发本方法
     *
     * @param channelContext
     * @param packet
     * @author tanyaowu
     */
    public void onAfterReceived(ChannelContext channelContext, Packet packet, int packetSize) throws Exception {
        log.infof("解码成功后触发onAfterReceived");
    }

    /**
     * 消息包发送之后触发本方法
     *
     * @param channelContext
     * @param packet
     * @param isSentSuccess  true:发送成功,false:发送失败
     * @author tanyaowu
     */
    @Override
    public void onAfterSent(ChannelContext channelContext, Packet packet, boolean isSentSuccess) throws Exception {
        log.infof("消息包发送之后触发onAfterSent");
    }

    /**
     * 连接关闭前触发本方法
     *
     * @param channelContext the channelcontext
     * @param throwable      the throwable 有可能为空
     * @param remark         the remark 有可能为空
     * @param isRemove
     * @author tanyaowu
     */
    @Override
    public void onBeforeClose(ChannelContext channelContext, Throwable throwable, String remark, boolean isRemove) {
        log.infof("连接关闭前触发onBeforeClose");
    }

    @Override
    public void onAfterDecoded(ChannelContext channelContext, Packet packet, int packetSize) throws Exception {
        // TODO Auto-generated method stub

    }

    @Override
    public void onAfterReceivedBytes(ChannelContext channelContext, int receivedBytes) throws Exception {
        // TODO Auto-generated method stub

    }

    @Override
    public void onAfterHandled(ChannelContext channelContext, Packet packet, long cost) throws Exception {
        // TODO Auto-generated method stub

    }
}

5 回复

启动时ioc未扫描到这个包路径下吧

cn.wizzer.app.factory

@qq_32b899df 启动类

package cn.wizzer.app.factory.commons.core;

import cn.wizzer.app.factory.tio.SimpleHandler;
import cn.wizzer.app.factory.tio.SimpleListener;
import cn.wizzer.app.factory.tio.SimplePacket;
import org.nutz.boot.NbApp;
import org.nutz.dao.Dao;
import org.nutz.ioc.Ioc;
import org.nutz.ioc.impl.PropertiesProxy;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.lang.Mirror;
import org.nutz.log.Log;
import org.nutz.log.Logs;
import org.nutz.mvc.annotation.Modules;

import java.sql.Driver;
import java.sql.DriverManager;
import java.util.Enumeration;

/**
 * Created by wizzer on 2018/3/16.
 */
@IocBean(create = "init", depose = "depose")
@Modules(packages = "cn.wizzer")
public class DubboRpcFactoryMainLauncher {
    private static final Log log = Logs.get();

    @Inject
    private Dao dao;


    @Inject
    private PropertiesProxy conf;

    @Inject
    private Ioc ioc;

    public static void main(String[] args) throws Exception {
        new NbApp().setPrintProcDoc(true).run();

    }

    public void init() {


        //通过POJO类创建表结构
        try {
            //Daos.createTablesInPackage(dao, "cn.wizzer.app.factory", false);
            //通过POJO类修改表结构
            //Daos.migration(dao, "cn.wizzer.app.sys", true, false);

//            SimpleListener simpleListener= ioc.get(SimpleListener.class);
//
//            SimplePacket simplePacket= ioc.get(SimplePacket.class);
//
//           SimpleHandler simpleHandler= ioc.get(SimpleHandler.class);
//
//
//           log.infof(simpleHandler.toString());
//            log.infof(simpleListener.toString());
//            log.infof(simplePacket.toString());

        } catch (Exception e) {
        }


    }

    public void depose() {
        // 非mysql数据库,或多webapp共享mysql驱动的话,以下语句删掉
        try {
            Mirror.me(Class.forName("com.mysql.jdbc.AbandonedConnectionCleanupThread")).invoke(null, "shutdown");
        } catch (Throwable e) {
        }
        // 解决com.alibaba.druid.proxy.DruidDriver和com.mysql.jdbc.Driver在reload时报warning的问题
        // 多webapp共享mysql驱动的话,以下语句删掉
        Enumeration<Driver> en = DriverManager.getDrivers();
        while (en.hasMoreElements()) {
            try {
                Driver driver = en.nextElement();
                String className = driver.getClass().getName();
                log.debug("deregisterDriver: " + className);
                DriverManager.deregisterDriver(driver);
            } catch (Exception e) {
            }
        }
    }


}

new NbApp().setPrintProcDoc(true).run();

这段, 你看看别的module怎么写的

main 里面要这样写才行。

public static void main(String[] args) throws Exception {
        NbApp nb = new NbApp().setArgs(args).setPrintProcDoc(true);
        nb.getAppContext().setMainPackage("cn.wizzer");
        nb.run();

    }
new NbApp().setPrintProcDoc(true).setMainPackage("cn.wizzer").run();
添加回复
请先登陆
回到顶部