1.2 Maven下开发

  1. 如果使用Maven管理jar包依赖,只需要引入如下dependency
  1. <dependency>
  2. <groupId>com.jfinal</groupId>
  3. <artifactId>jfinal</artifactId>
  4. <version>3.4</version>
  5. </dependency>
  6.  
  7. <dependency>
  8. <groupId>com.jfinal</groupId>
  9. <artifactId>jetty-server</artifactId>
  10. <version>8.1.8</version>
  11. <scope>provided</scope>
  12. </dependency>
  1. 注意,jetty-server依赖的scopeprovided,仅用于开发阶段,部署时不需要,打包时也会自动跳过。
  2. Maven下启动JFinal与前面介绍的非maven方式基本相同,唯一的区别是在创建Java Application启动项时,在Arguments标签中的Program arguments中输入:src/main/webapp 80 / 5参数用来指定web项目的根目录。如下示例代码是main方法启动方式:
  1. public static void main(String[] args) {
  2. // eclipse 下的启动方式
  3. JFinal.start("src/main/webapp", 80, "/", 5);
  4.  
  5. // IDEA 下的启动方式
  6. // JFinal.start("src/main/webapp", 80, "/");
  7. }

常见问题解决:

1:出现 NoClassDefFoundError 异常

原因之一是 maven 本地库下载的 jar 文件数据有错误。看一下异常中是哪个类文件抛出的 NoClassDefFoundError,在本地 maven 库中删掉其目录,让 maven 从中心库中重新下载一次即可,例如使用的 jfinal-3.4 版本,就删掉 maven repository 中的 /com/jfinal/jfinal 目录下面的 3.4 子目录。

原因之二是对同一个 jar 包,引入了多个不同版本,删掉其中多余的即可

  1. 以上问题本质上与 jfinal 无关,纯属 Java 开发时碰到的基础性异常

< 1.1 Eclipse下开发

1.3 IDEA下开发 >

原文: http://www.jfinal.com/doc/1-2