最近开始学习appfuse,为了搭建调试环境,过程感觉是有些郁闷的,在这里记录下来,供人参考,少走弯路。
大致上,可以参考
http://www.appfuse.org/display/APF/AppFuse+QuickStart+-+Chinese步骤,顺便补充一下必要的调整和操作:
前提条件:
1. 下载安装jdk,推荐使用1.6,指向jdk目录而非jre目录
2. 安装mysql,我本地使用的是5.0.45,也是ok的
3. smtp 这步骤暂且可以跳过 (如果不想太偷懒的话,可以先配置连接到google的smtp)
4. 使用maven 2.2.1+ (文章中轻描淡写的说如果用maven3会如何,确实如此,所以请使用maven2.x)
由于现在appfuse在使用maven方面贯彻的比较坚决,所以最好先做一些关于maven的功课。偶刚看过《maven实战》,这本书确实帮助非常大。
先在页面上生成archetype配置,例如:
在这里我想将appfuse工程放在我的 D:\appfuse 目录,于是将页面生成的mvn命令拷贝到我的控制台上执行
如果你的本地maven仓库上没有下载相应的依赖库文件的话,这个步骤时间会比较长(如果运气再差点,半个小时是需要的)
由于这样得到的appfuse只包含了部分的源码,例如service和数据库访问模块,是以jar文件的形式下载的。所以appfuse提供了 mvn appfuse:full-source ,可以进一步获取appfuse全部源码。
但是默认情况下(在appfuse2.1.0-M2)版本下,这个命令执行之后会报错:
javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: N
subject alternative DNS name matching appfuse.dev.java.net found.
at org.apache.tools.ant.taskdefs.Get.execute(Get.java:139)
at org.appfuse.mojo.installer.InstallSourceMojo.addModuleDependencies(I
stallSourceMojo.java:630)
at org.appfuse.mojo.installer.InstallSourceMojo.execute(InstallSourceMo
o.java:214)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPlug
nManager.java:490)
上述问题是由于appfuse默认指定的svn服务器已经不再可用了。
http://appfuse.547863.n4.nabble.com/Classpath-issue-on-importing-appfuse-project-in-eclipse-td3249138.html
解决办法就是修改顶层pom.xml文件,加入新的svn配置,如下:
完成上述步骤之后,如果你使用的maven3,配置完svn之后仍然会执行出错,此时需要使用maven2版本,重新配置完maven环境变量之后,记得重启命令控制台。
关于maven版本的问题,可参考:
http://appfuse.547863.n4.nabble.com/Classpath-issue-on-importing-appfuse-project-in-eclipse-td3249138.html
执行完 mvn appfuse:full-source 命令之后。为了能在ide中导入,使用mvn eclipse:eclipse即可,如果构建失败,提示“ Request to merge when 'filtering' is not identical.”的话,参考:
http://easwy.com/blog/archives/maven-build-eclipse-project-failed/
可改用: mvn org.apache.maven.plugins:maven-eclipse-plugin:2.6:eclipse 命令
另外官网上提到的 mvn install eclipse:eclipse 我没有试成功,总是在启动集成测试的时候挂掉, 但毕竟我的本意只是想要生成eclipse工程文件,所以这个我就暂时无视了。
另外我本地mysql的root用户,最初不是空密码,后来改成空密码,只为了偷懒一下,密码、以及数据库类型的配置,在顶层的pom文件中对应有属性配置。
希望这些文字对各位能有点帮助。为了搞定这个环境,耗费了不少时间,最后来个截图纪念与一下吧。
- 大小: 13.1 KB
- 大小: 14.9 KB
- 大小: 20 KB
- 大小: 151.7 KB
分享到:
相关推荐
这个命令会处理ant存在的问题,特别是Windows环境下遇到的问题,确保$USER_HOME/.m2/repository目录存在并包含正确的settings.xml文件。 3. 接下来,为了让Eclipse识别并导入Maven项目,执行`mvn eclipse:eclipse`...
常见问题解答部分汇总了一些开发者在使用 AppFuse 时可能会遇到的问题及解决方案。这对于新手来说是一份宝贵的参考资料。 #### 新闻与文章 (News & Articles) 这部分内容不仅包括最新的项目动态和更新信息,还有...
mvn archetype:generate -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-modern-webapp -DarchetypeVersion=<版本号> ``` 这里,你需要替换`<版本号>`为当前AppFuse的版本。 步骤4:...
6. **开发流程**:在使用AppFuse 2.1.0 开发Web应用时,开发者首先会设置数据库连接,然后创建数据模型并使用Hibernate进行持久化。接着,定义服务接口和实现,使用Spring进行管理。最后,通过Spring MVC设计控制器...
首先,为了运行这个AppFuse 2.0实例,你需要确保你的开发环境中安装了Java Development Kit (JDK) 和 Apache Maven。Maven 是一个项目管理工具,用于处理依赖管理和构建流程。如果没有预装,可以从官方网站下载并...
mvn archetype:generate -DarchetypeGroupId=org.appfuse -DarchetypeArtifactId=appfuse-basic -DarchetypeVersion=2.x -DgroupId=com.mycompany -DartifactId=myproject -Ddb=oracle ``` 这将根据你的配置生成一个...
为了加速构建过程,可以从 Appfuse 的官方网站下载预先打包好的依赖文件 `appfuse-2.0-rc1-dependencies.zip`,解压后放到 `.m2\repository` 目录下,这样 Maven 就可以直接使用这些文件,而无需下载。 #### 五、...
- **目的**:JDK5 是 AppFuse 运行的基本环境之一,确保正确安装 JDK5 并且设置 `JAVA_HOME` 环境变量指向 JDK 而非 JRE 目录。 - **下载链接**:http://java.sun.com/javase/downloads/index_jdk5.jsp ##### 2. ...
替换 `<选择的模板>` 为下载的模板名称,如 `appfuse-basic`,`appfuse-minimal` 等,`<对应版本>` 是你下载的 AppFuse 版本号。 **4. 编译与运行** 进入新创建的项目目录,使用 Maven 编译并运行项目: ``` cd my...
1. **安装与配置**:首先,你需要在本地环境安装Java、Maven和IDE(如IntelliJ IDEA或Eclipse)。然后,通过Maven命令行或者IDE导入AppFuse项目模板。 2. **项目初始化**:运行AppFuse的生成器,选择合适的项目类型...
配置环境变量,如JAVA_HOME、M2(指向Maven的bin目录)和M2_HOME,然后在PATH中添加Maven和Tomcat的bin目录,以便于执行命令和运行应用。 生成AppFuse项目时,可以通过执行特定的Maven命令来创建不同类型的项目,...
如果尝试使用Ant来构建Appfuse 2.0,可能会遇到问题,因为官方已不再推荐使用Ant。 #### 四、安装Maven 接下来详细介绍如何在Windows 2000/XP环境下安装Maven 2.0.6: 1. **下载Maven**:访问官网 ...
在"appfuse-light-webwork-spring-jdbc-1.8.2.zip"这个压缩包中,我们能看到一个基于Java 8、WebWork、Spring和JDBC的项目实例。 **Java 8** Java 8是Java平台的重大更新,引入了许多新特性,如lambda表达式、函数...
### AppFuse:加速J2EE项目开发 #### 一、简介与背景 AppFuse是一个用于启动J2EE项目的工具包,它提供了一种快速而简便的方法来构建基于Java的应用程序。该工具包由Matt Raible创建,他在网络开发领域拥有丰富的...