`
zhaoshg
  • 浏览: 252893 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

appfuse2.0.2在eclipse下的开发和使用

阅读更多

1.准备工作
包括JDK 5+、MySQL 5.x和Maven 2.1.0。Maven的环境变量配置:新建变量名为“M2_HOME”,路经为Maven根目录的环境变量,然后在Path中添加“;%M2_HOME%\bin”。如果你不想在线下载工程的依赖包,可以到appfuse-dependencies-2.0.2.zip下载,然后解压,并且将maven目录下conf文件夹下的settings.xml的localRepository变量设置为你刚刚解压的路径如C:\Docume~1\%username%\.m2\repository

2. 创建工程
接下来我们习惯性的想要去寻找AppFuse的工程源码,其实这个完全没有必要,Maven全部为我们代劳了。当然前提条件是你的机器必须能够上网。

因为我一直使用的都是struts+spring+ibatis的框架,所以接下来就是构建这个工程了。

进入命令行窗口,转到想要存放工程的路径下,输入
mvn archetype:create -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-basic-struts -DremoteRepositories=http://static.appfuse.org/releases -DarchetypeVersion=2.0.1 -DgroupId=com.mycompany.app -DartifactId=myproject
其中的-DgroupId和-DartifactId可以修改为自己想要的包名和工程名。如果你下载了上面的依赖包的话,"-DremoteRepositories=http://static.appfuse.org/releases "这个就不用加了

使用其它框架的可以到http://appfuse.org/display/APF/AppFuse+QuickStart查找相应的命令。

命令执行完,显示BUILD SUCCESSFUL后,进行下一步。

3.配置数据库
打开工程根目录下的pom.xml,找到最后一个<jdbc.username>和<jdbc.password>,即MySQL的配置项,把用户名和密码修改为自己MySQL的配置。AppFuse默认root用户的密码为空,如果你的数据库是这样设置的,当然就不用改了。

4. 因为appfuse默认的是hibernate,所以要修改为ibatis工程(修改pom.xml)

     ①删掉文件中的**/hibernate.cfg.xml

     ②把这个<artifactId>appfuse-hibernate</artifactId>改成<artifactId>appfuse-ibatis</artifactId>

     ③<dao.framework>hibernate</dao.framework>改为<dao.framework>ibatis</dao.framework>

     ④在<properties></properties>中加上<ibatis.version>2.3.4.726</ibatis.version>

 

5.运行工程
在命令行进入工程根目录,运行mvn,Maven开始下载jar包、Tomcat和运行集成测试。这一工作需要的时间还是挺长的,我的机器运行了半小时以上,所以你可以先去干点别的。如果你有了第一步的依赖包,就会节省很多时间.

接下来有可能会提示没有mysql-schema.sql文件,所以你建一个空的就可以了,再次运行mvn

接下来运行mvn jetty:run-war,Maven开始打包、发布程序,并启动Jetty,运行完成后,你就可以通过http://localhost:8080,使用admin/admin或者user/user登录,浏览这个web应用了。

从表面看,除了样式,功能没有多少变化。

5.开发工程
到现在的阶段还看不到工程源码,接下来运行mvn appfuse:full-source,如果你的操作系统是Windows,会有一个Ant1.7.0的bug而导致构建失败,解决办法要么下载Ant1.7.1(似乎目前还未发布),要么是在C:\Documents and Settings\%username%\.m2下建立一个settings.xml文件(其中username是你当前进入系统的用户名),内容是
<?xml version="1.0" encoding="UTF-8"?>
<settings>
    <localRepository>C:\Docume~1\%username%\.m2\repository</localRepository>
</settings>

重新运行mvn appfuse:full-source,工程源码就下载到工程目录下了。

其实这个路径C:\Docume~1\%username%\.m2\repository就是第一步你的依赖包解压位置,如果你已经在maven的settings文件配置了的话,这个settings.xml可以不用了

运行mvn install eclipse:eclipse,生成eclipse项目文件,这一过程也需要半小时左右。然后使用Eclipse打开它,可以欣赏最新的AppFuse源码了。如果你是下载并配置了appfuse-dependencies-2.0.2.zip,可以使用这个命令mvn clean eclipse:eclipse -o,就省略了下载jar的过程.

接下来还有一个问题,eclipse找不到jar包,源码里全是红叉。打开Java Build Path,发现有大量引用M2_REPO,大概eclipse不知道这个文件夹在哪里。添加一个变量,名字M2_REPO,路径指到C:\Docume~1\%username%\.m2\repository,确定后系统提示要重新编译,之后大部分红叉都会消失了。
 以下的附件是我的pom.xml文件,这个可以根据自己的需要定制的.

  • pom.rar (4.4 KB)
  • 下载次数: 82
分享到:
评论
1 楼 zenzuguo 2012-05-10  
为啥我在eclipse tomcat6.0启动时总报错

May 10, 2012 2:22:56 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class com.testapp.webapp.listener.StartupListener
java.lang.IllegalArgumentException: Failed to find mapping for class [com.testapp.model.Role]
at org.compass.gps.device.ibatis.SqlMapClientGpsDevice.doGetIndexEntities(SqlMapClientGpsDevice.java:122)
at org.compass.gps.device.support.parallel.AbstractParallelGpsDevice.index(AbstractParallelGpsDevice.java:89)
at org.compass.gps.impl.DefaultReplaceIndexCallback.buildIndexIfNeeded(DefaultReplaceIndexCallback.java:42)
at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager$ReplaceIndexOperationCallback.firstStep(DefaultLuceneSearchEngineIndexManager.java:281)
at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager.doOperate(DefaultLuceneSearchEngineIndexManager.java:218)
at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager.doReplaceIndex(DefaultLuceneSearchEngineIndexManager.java:266)
at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager.replaceIndex(DefaultLuceneSearchEngineIndexManager.java:261)
at org.compass.gps.impl.SingleCompassGps.doIndex(SingleCompassGps.java:118)
at org.compass.gps.impl.AbstractCompassGps.index(AbstractCompassGps.java:154)
at org.compass.gps.impl.AbstractCompassGps.index(AbstractCompassGps.java:128)
at com.testapp.webapp.listener.StartupListener.setupContext(StartupListener.java:110)
at com.testapp.webapp.listener.StartupListener.contextInitialized(StartupListener.java:93)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4206)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4705)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
May 10, 2012 2:22:56 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart

相关推荐

    appfuse 2.0.2PDF格式文档

    appfuse 2.0.2文档 PDF格式文档

    appfuse2.0.2 Struts2 hibernate Spring 构建的基于SQLServer2005 的ssh2项目的过程全记录

    appfuse2.0.2 Struts2 hibernate Spring 构建的基于SQLServer2005 的ssh2项目的过程全记录 网上很多帖子介绍appfuse2构建过程的,但是基于SQLServer2005的没有,顶多一笔带过,另外对于期间出现的各种问题也没有个说明,...

    appfuse 2.0.2文档 pdf

    NULL 博文链接:https://xizhenyin.iteye.com/blog/715447

    Appfuse1.9至2.0.2

    主要是自己从网络上搜集的一些关于appfuse1.8.2-2.0.2的一些相关资料,间或有点自己试验的记录,还有点maven和quartz的东东,之前我主要是用1.8.2构建项目,感觉还不错,希望对想学习appfuse的人有些帮助.

    Appfuse教程Appfuse开发.pdf

     通过关注AppFuse,我们可以看到目前国外的主流开发都使用了哪些技术,开发方式是什么样的,可能达到什么样的结果,而在以前,是很少能够看到这样完整的例子的。  AppFuse的另一个启示是:我们可以依靠开源软件的...

    ibatis版appfuse eclipse工程

    已经调试好的ibatis版appfuse eclipse工程。帮助学习appfuse。表结构 和hibernate的相同。

    可直接使用的appfuse项目

    AppFuse是一个集成了众多当前最流行开源框架与工具(包括Hibernate、ibatis、Struts、Spring、DBUnit、Maven、Log4J、Struts Menu、Xdoclet、SiteMesh、OSCache、JUnit、JSTL等(现在还有lucene的,无敌了))于一身的...

    appfuse开发框架(myapp)使用说明文档

    对用appfuse 做快速开发进行说明 本框架推荐使用的Tomcat版本为5.0.*,JDK使用1.4。若使用JDK 1.5+,则要将Tomcat安装目录下的common\endorsed 里面两个JAR(xercesImpl.jar,xmlParserAPIs.jar)去掉。Ps:...

    APPFUSE工具研究.doc

    Appfuse是一个开源的工程应用,它集成了现在最流行的开发框架到该应用中,使用Maven可以很方便的开发和部署因为。也可以集成到现在流行的开源开发工具如eclipse,idea等。现在让我们简单的看看APPFUSE开发应用的简单...

    AppFuse

    本文以一个 J2EE 开发者的角度,借助一个简单的应用示例,在融合了个人经验的基础上介绍了如何用 AppFuse 一步步地构建 J2EE 项目。通过阅读本文,读者不仅能够学会用 AppFuse 进行开发,而且能够充分体会到 AppFuse...

    appfuse

    使用appfuse2.0,下载过来的实例源码,没有jar包

    AppFuse入门文档(AppFuse与SpringMVC+mybatis整合)

    本文档详细描述了AppFuse与SpringMVC+mybatis整合的过程,只要你懂一些基本的eclipse操作和基本的maven命令,就可以在三分钟之内迅速的搭建出一个AppFuse的架构

    SSH学习及开发框架-appfuse

    appfuse 有struts2+hibernate+spring的整合 springmvc+hibernate+spring的整合 ...学习开发参考使用非常方便 可以到官方下载最新版的,我只是把自己下载的打包整理一下 注意哈,都是基于maven的项目哈

    Appfuse开发教程

    Appfuse是Matt Raible 开发的一个指导性的入门级J2EE框架,它继承了流行的Spring、Hibernate、ibatis、struts、Xdcolet、junit等基础框架,最新的1.7版更是提供了对Taperstry和JSF的支持。在持久层,AppFuse采用了...

    使用AppFuse快速构建J2EE应用

    本文内容:示例介绍搭建开发环境新建项目创建数据库表用AppGen生成代码根据项目需求调整代码其他功能结束语本文以一个J2EE开发者的角度,借助一个简单的应用示例,在融合了个人经验的基础上介绍了如何用AppFuse一...

    appfuse使用手册

    代码自动生成工具appfuse的中文使用手册

    使用 AppFuse 快速构建 java

    使用 AppFuse 快速构建 java 使用 AppFuse 快速构建 java

    AppFuse项目研究

    Appfuse是由Matt Raible开发的一个指导性的入门级J2EE框架,它对如何集成流行的Spring、Hibernate、iBatis、struts、Xdoclet、junit 等基础框架给出了示范。提供了对Taperstry和JSF的支持

Global site tag (gtag.js) - Google Analytics