JFinal热加载异常

Jieven 发布于 2013/04/26 17:15
阅读 494
收藏 1

@JFinal 你好,想跟你请教个问题:


项目启动正常,然后热加载的时候重新加载
configRoute
会报错 The controllerKey already exists

断点Routes map 在热加载的时候,map里面的数据没有重置,会出现如上异常。

疑问:难道热加载不先清掉Routes,然后重新加载一遍吗?

上面用的是JFinal1.3
另外分别尝试了之前JFinal1.1+JFinal1.3的Demo工程也出现了上述问题。

@绝望的八皮@龙影@Mike_Liu

加载中
0
JFinal
JFinal
从没碰到过这种情况,在 com.jfinal.core.ActionMapping.buildActionMapping() 方法的第一行加一句mapping.clear();试试看
Jieven
Jieven
回复 @JFinal : 我知道不是JFinal要求的,但是不这么放不是会出现热加载异常问题吗?
JFinal
JFinal
回复 @杰文 : 不是 JFinal 要求的,是Java Web项目规范要求的,BAE要求放项目根目录下属于他自己的规范
Jieven
Jieven
回复 @JFinal : 刚才了解到BAE环境lib要求放在工程根目录,这个和JFinal要求的放在WebRoot/WEB-INF/lib 会有冲突吗? Project ——src ——lib ——WebRoot ——WEB-INF ——web.xml
JFinal
JFinal
回复 @杰文 : JFinal 通过jetty启动了项目,这个启动过程是可以设置外部jar包的,与普通java项目一样。但jetty启动以后又会当成是web项目去WEB-INF下面去找jar,所以这两种方式同时上可能有问题,具体原因不明
Jieven
Jieven
回复 @JFinal : 在经过N轮尝试之后发现最终原因是我将lib放在了项目下面,然后手工加载,并没有将lib放到WEB-INF下面,导致了这一系列的问题。这个是必须放在WEB-INF下面吗?
下一页
0
Mike_Liu
Mike_Liu
心有力 而余不足 ~  ClassLoader 方面的东西我接触的还是有点少  嘻。
紫电清霜
紫电清霜
哈哈:)
0
Jieven
Jieven
不可能吧,你都整了一个项目了,那你启动的时候没有异常过??
我第一次整JFinal1.1的时候也没遇到过,诡异的是,昨天把,之前正常的,拿出来测试居然都不正常了。不解。。
0
绝望的八皮
绝望的八皮
我曾经遇到过这个问题。。无解中。
Jieven
Jieven
我现在是百发百中,每次重新加载都这样,连八皮大神都无解,坐等@JFinal
0
Rezeroer
Rezeroer

我也遇到这个问题,这个应该就是classloder的问题  我是引入外部的Jerrty 和 Jfinal1.4 热启动就会抱这个错

解决方法是把外部的Jfinal放到Lib下面

返回顶部
顶部