升级到jfinal3.6,ActiveRecordPlugin无法启动

设置动态SQL模板代码:

arp.setBaseSqlTemplatePath(PathKit.getRootClassPath());

arp.addSqlTemplate("sql/all.sql");


错误信息:

java.lang.RuntimeException: Plugin start error: com.jfinal.plugin.activerecord.ActiveRecordPlugin. 

File not found : "D:/project/yhClimateDecision/src/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/cd/WEB-INF/classes/sql/all.sql"


all.sql文件是存在的。


改回3.5没问题。


评论区

逍遥一生

2019-02-11 14:50

arp.setBaseSqlTemplatePath("/sql");
arp.addSqlTemplate("all.sql");

JFinal

2019-02-11 15:19

arp.setBaseSqlTemplatePath(PathKit.getRootClassPath())
改成:
arp.setBaseSqlTemplatePath(null);

因为 jfinal 3.6 的 sql 管理的 engine 配置了:
engine.setToClassPathSourceFactory(...);

配置好后,这样:
arp.addSqlTemplate("sql/all.sql");

rapin

2019-02-11 15:31

@JFinal 恩,去掉arp.setBaseSqlTemplatePath(PathKit.getRootClassPath()) 后可以了。感谢所有老铁