NutzCN Logo
精华 项目打包成war包部署到tomcat的时候MainModule中@SetupBy(InitSetup.class) InitSetup类没有加载,不太清楚是什么情况
发布于 1944天前 作者 qq_cd5d3723 2025 次浏览 复制 上一个帖子 下一个帖子
标签:

特意在InitSetup类中写了这一段
static{
System.out.println("进入了这个class");
}
发现并没有执行,不清楚这是什么情况

10 回复

别的东西执行了吗? 例如NutFilter

别的应该是正常运行了
[INFO ] 15:51:55.640 org.nutz.ioc.loader.annotation.AnnotationIocLoader.addClass(AnnotationIocLoader.java:99) - > add 'nutFilterStarter ' - org.nutz.boot.starter.nutz.mvc.NutFilterStarter
[DEBUG] 15:51:55.641 org.nutz.ioc.loader.annotation.AnnotationIocLoader.handleIocBeanMethod(AnnotationIocLoader.java:263) - Found @IocBean method : NutFilterStarter.createNutFilter(...) define as name=nutFilter
[DEBUG] 15:51:55.676 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) - Get 'nutFilterStarter'<class org.nutz.boot.starter.nutz.mvc.NutFilterStarter>
其他功能都没什么问题,就是websocket通信这块不行

是Tomcat8.5 版本应该没问题的吧?

MainModule?不是MainLauncher吗?写错地方了?main方法所在的那个类

@IocBean
public class MainLauncher {

public static void main(String[] args) {
    new NbApp().setMainClass(MainModule.class).setPrintProcDoc(true).run();
}

}

@SetupBy(InitSetup.class)
@Encoding(input = "UTF-8", output = "UTF-8")
public class MainModule {
}

是这样做的,就是等于放在main所在的类了,刚刚我去试了一下放到main所在的类也是不加载
项目是在github上面蛋蛋大神的那个lulichat项目上面改动的

又搞了一次,确实是这个问题,谢谢您哈

删掉MainModule 类, 把注解全搬到MainLauncher上

嗯嗯,就是按您说的试了,可以了,谢谢,谢谢

这个算是war打包的限制

添加回复
请先登陆
回到顶部