近期在学习activiti,打算基于现有的框架,比如activiti-explorer或者咖啡兔的示例工程 kft-activiti-demo,在此基础上添加自己的业务流程,看看是否可以走通,以及这个过程要走通,需要编写哪些方面的代码,然后选定使用kft-activiti-demo来作为试点,由于公司的网络无法连接maven库,所以选择了kft-activiti-demo-no-maven版本来测试,由于对java技术栈不熟悉,所以搭建环境的过程中引出了各种问题,下面将详细记录搭建的步骤,以避免后来人继续掉坑里。

 
一、开发环境
windows 10 64位
jdk 1.8
Eclipse Java EE IDE for Web Developers. 4.5.0
tomcat 7.0.64
 
二、相关资源
2)从https://github.com/henryyan/kft-activiti-demo/zipball/no-maven 下载了henryyan-kft-activiti-demo-1.10.2-no-maven-5-g9340b4a.zip
 
三、解决各种编译错误
1)将henryyan-kft-activiti-demo-1.10.2-no-maven-5-g9340b4a.zip 解压到henryyan-kft-activiti-demo-9340b4a_nomaven;
2)使用eclipse打开该工程
然后点击finish即可,在eclipse中显示如下:
3)编译该工程,通过如下按钮进行;
4)编译之后会提示如下错误:
下面逐个解决;
    a)javax.servlet.jsp.JspException cannot be resolved to a type、javax.servlet.jsp.PageContext cannot be resolved to a type
   解决这个异常需要加入:jsp-api.jar在tomcat安装目录的libs中有、同样如果servlet异常需要加入servlet-api.jar tomcat也有的,在当前工程中,主要是由于工程中配置的是要求tomcat 6.0,但是在当前eclipse中配置的是tomcat 7.0.64版本,所以需要按照下图所示,在server library中选择当前eclipse中配置的web服务器 tomcat 7.0,确定之后就会自动引入该tomcat的lib目录下的jar包
    引入之后如下:
  
    然后再次重新编译,应该只剩下如下两个错误:
  b)cvc-complex-type.2.4.a: Invalid content was found starting with element 'display-name'.
    对于该问题,只需要双击打开web.xml文件,然后把有问题的这行删除即可,初步怀疑是在最新版本的web.xml中,已经取消了display-name配置项。
 
    c)Target runtime Tomcat v6.0.32-eclipse is not defined.
    该问题在如下路径( http://blog.csdn.net/xw13106209/article/details/5910358    )中找到了解决方法,说到底就是要修改工程目录下的.settings文件夹里org.eclipse.wst.common.project.facet.core.xml文件。他当前的内容是:
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <runtime name="Tomcat v6.0.32-eclipse"/>
  <fixed facet="wst.jsdt.web"/>
  <fixed facet="jst.web"/>
  <fixed facet="java"/>
  <installed facet="java" version="1.6"/>
  <installed facet="jst.web" version="2.5"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
</faceted-project>
 
    要把他改为:
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <runtime name="Apache Tomcat v7.0"/>
  <fixed facet="java"/>
  <fixed facet="wst.jsdt.web"/>
  <fixed facet="jst.web"/>
  <installed facet="java" version="1.8"/>
  <installed facet="jst.web" version="3.0"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
</faceted-project>
    
    在工程上右键刷新一下。
    
    然后clean,重新编译之后,应该还有如下一个错误:
    
 
    d)Java compiler level does not match the version of the installed Java project facet.
    在工程属性中修改当前工程的java 编译器,改为当前安装的版本即可,在本例中我安装的是1.8,那么选择1.8再重新编译,应该就没有错误了。
   
四、部署    
    在项目上右键 run as ->run on server,弹出如下对话框,选择一个tomcat服务器,点击finish即可。
      
启动之后,会显示如下页面:
 
如果是第一次使用,在输入用户名和密码之后,会提示如下错误:
这是因为h2数据库没有初始化,需要按照如下步骤做初始化。
2)把该jar包拷贝到某路径,
3)确保刚刚启动的eclipse已经退出运行状态;
4)然后在控制台中运行 java -jar h2-1.3.167.jar,然后会在浏览器中弹出如下界面:
4)在jdbc url中输入:jdbc:h2:file:~/kft-activiti-demo;AUTO_SERVER=TRUE
然后点击connect,显示界面如下:
然后依次执行源码目录下的以下sql脚本,将脚本内容拷贝到上述界面的文本框中,点击Run执行。
+resources\sql\h2\create
    -activiti.h2.create.engine.sql
    -activiti.h2.create.history.sql
    -activiti.h2.create.identity.sql
+resources\sql\h2
    -data.sql
执行好完之后,应该包括如下这些表:
然后退出控制台,重新再eclipse 中 run as -> run on server,这次再输入用户名、密码,就可以正常登陆了。
登录之后界面如下图所示:
 
 
好了,环境搭建完成,可以开始学习源码了。
 

流程引擎Activiti系列:在eclipse中搭建咖啡兔的Activiti演示工程中的各种坑及其解决方法(kft-activiti-demo-no-maven)的更多相关文章

  1. 启动 Eclipse 弹出“Failed to load the JNI shared library jvm.dll”错误的解决方法!&&在eclipse.ini中为eclipse指定jdk启动

    参考:http://blog.csdn.net/zyz511919766/article/details/7442633 http://blog.sina.com.cn/s/blog_028f0c1c ...

  2. Easyui中使用jquery或js动态添加元素时出现的样式失效的解决方法

    Easyui中使用jquery或js动态添加元素时出现的样式失效的解决方法 2014-03-27 11:44:46|  分类: Easy UI|举报|字号 订阅     可以使用$.parser.pa ...

  3. 启动 Eclipse 弹出“Failed to load the JNI shared library jvm.dll”错误的解决方法!

    启动 Eclipse 弹出"Failed to load the JNI shared library jvm.dll"错误的解决方法 http://blog.csdn.net/z ...

  4. 记一次SpringBoot 开发中所遇到的坑和解决方法

    记一次SpringBoot 开发中所遇到的坑和解决方法 mybatis返回Integer为0,自动转型出现空指针异常 当我们使用Integer去接受数据库中表的数据,如果返回的数据中为0,那么Inte ...

  5. eclipse上一次没有正确关闭,导致启动的时候卡死错误解决方法

    关于 eclipse启动卡死的问题(eclipse上一次没有正确关闭,导致启动的时候卡死错误解决方法),自己常用的解决方法: 方案一(推荐使用,如果没有这个文件,就使用方案二): 到<works ...

  6. 从客户端中检测到有潜在危险的 Request.Form 值的问题的解决方法。

    在controller控制器里面添加[ValidateInput(false)]         [ValidateInput(false)]        public ActionResult m ...

  7. eclipse一直卡住,出现 “android sdk content loader 0%” 卡住的错误分析及解决方法

    分析:这种问题之前没有遇到过,也不知道什么原因,直接去网上查询,打开www.stackoverflow.com,输入要查询问题的关键词,我们输入 “android sdk content loader ...

  8. 黄聪:Windows 64位系统中安装Android SDK“系统找不到指定的文件Java.exe”解决方法

    明明已经在64位window7中安装好了64位版本的jdk,为什么android SDK安装程序却识别不到jdk呢?先看看报错: Java SE Development Kit (JDK) not f ...

  9. Eclipse启动时发生An internal error occurred during: "Initializing Java Tooling".错误的解决方法

    问题描述: Eclipse启动时发生An internal error occurred during: "Initializing JavaTooling".错误的解决方法 解决 ...

随机推荐

  1. animation of android (2)

    android Interpolator 首先是android系统提供的变换方式: 这些方式将转载一篇文章: 转: http://www.cnblogs.com/mengdd/p/3346003.ht ...

  2. android 小记

    1.INSTALL_FAILED_INSUFFICIENT_STORAGE 手机内存不够,删除部分后即可安装.

  3. mysql,sql server,oracle 唯一索引字段是否允许出现多个 null 值?

    最近一个项目,涉及到sql server 2008,因为业务需求,希望建立一个唯一索引,但是发现在sql server中,唯一索引字段不能出现多个null值,下面是报错信息: CREATE UNIQU ...

  4. SQL中获取最近的N个半年度

    直接上代码: --获取往前推的N个半年度 CREATE FUNCTION F3_GetRecentNHalfYear ( @N INT ) RETURNS @Result TABLE ( Year S ...

  5. 设计模式C#实现(三)——外观模式

    外观模式——提供了一个统一的接口,用来访问子系统中的一群接口.外观定义了一个高层接口让子系统更容易使用. 一个外观包含了为许多对象和对他们的操作,使得重复这些操作更方便. 假如客厅里有灯(Lights ...

  6. Linux主流發行版本介紹

    一.简介 而工欲善其事,必先利其器,Linux的世界相當廣大,除了最著名的Ubuntu以外還有不少發行版.然文人相輕,自古皆然,了解不同發行版的優勢不只嘴上攻防用的上,也是學Linux一個有趣的地方! ...

  7. Azure CDN 启用HTTPS

    默认情况下,订阅里的CDN不支持HTTPS 需要联系21v,提交工单告知订阅号,由后台为订阅启用CDN的HTTPS功能. 然后就可以在创建CDN时选到HTTPS的选项了.

  8. 怎么在ZBrush中渲染漫画风格的插画

    创建“漫画插画”的外观和感觉想必一定很有趣吧,但是,获得想要的精确外观有时也会令人相当沮丧,因此了解一些基本原则,创建类似于ZBrush漫画MatCaps的作品很有必要. 若有疑问亦或者想查看具体的视 ...

  9. [转载]ExtJs4 笔记(5) Ext.Button 按钮

    作者:李盼(Lipan)出处:[Lipan] (http://www.cnblogs.com/lipan/)版权声明:本文的版权归作者与博客园共有.转载时须注明本文的详细链接,否则作者将保留追究其法律 ...

  10. css3中的多列布局columns详解

    columns语法:columns:[ column-width ] || [ column-count ]设置或检索对象的列数和每列的宽度 其中:[ column-width ]:设置或检索对象每列 ...