MyEclipse9.0平台创建maven webProject如下:
准备环境: jdk1.6
MyEclipse9.0
maven插件(MyEclipse下载地址https://repository.sonatype.org/content/sites/forge-sites/m2e/0.10.0/S/20100205-2200/),
也可以使用MyEclipse自带maven插件,建议自己下载安装。
方法一:
1 New --> Web Project
2 输入Project name:yourProjectName
在Source folder里输入:src/main/java
在Web root folder里输入src/main/web
在Maven里选择上add Maven Support
这里的source folder和web root folder输入如上内容,是按maven的官方推荐的maven工程的结构来给source文件夹和web文件夹命名的。
3 点击finish后,就生成简单的maven project,右键 new--> Source Folder创建一下目录:
src/main/resources :存放资源文件
src/test/java :存放测试代码
根据需求选择性创建以下目录(以上两个目录可以满足基本的开发需求),可以根据开发环境动态生成资源文件
src/main/dynamicsFiles:动态资源文件,可以在pom.xml中配置动态生成到src/main/resources目录下
src/main/filters :过滤资源文件,动态资源文件在此文件中获取动态属性
4 刷新工程,将src/main/resources,src/test/java 加入类路径下:Properties-->Build Java Path -->Source > Add Folder 如下图所示:
将Default output folder 路径设置为 yourProjectName/src/main/webapp/WEB-INF/classes,
src/main/java,src/main/resources选择默认路径,src/test/java选择target/test-classes
5 删除多余文件夹webapp下的main,保持跟官网结构一致
6 在pom.xml里有些要改一下,如依赖包的版本和依赖项等。
方法二:
1.New-->Maven Project
2.点击两次next之后,Filters选择Group Id: orf.apache.maven.archetypes, Artifact Id :maven-archetype-webapp
3.完善组织ID、项目名称、包名等信息
4.点击finish创建maven 工程
5.将工程添加web属性
6.将Web Root Directory 改为src/main/webapp
7.点击finish,创建maven web工程,再依次执行方法一的3、4步骤。
maven工程优势:
1.对第三方依赖库进行统一的版本管理。
只要用了Maven2就不用再为每个项目复制spring.jar和hibernate.jar了,Maven2会在你需要的时候,自动把这些第三方依赖库找到,你需要编译,Maven2就把这些jar包放到classpath里,你需要打包,Maven2就帮你把需要的jar包都复制到WEB- INF/lib/目录下。
2. 统一项目的目录结构。
可以保证所有项目的目录结构都是一样的,目录结构统一的好处就是,你要找源代码就去src/main/Java/下,你要找需要放到classpath下的资源,就去src/main/resources/下,你要找单元测试对应的代码和资源,就去src/test/下。每个目录下放什么东西,程序编译,发布的时候,每个目录起什么作用都很清楚明了,不会出现打开项目找不到要找的文件的情况。
3.统一软件构建阶段
Maven2把软件开发的过程划分成了几个经典阶段,比如你先要生成一些Java代码,再把这些代码复制到特定位置,然后编译代码,复制需要放到classpath下的资源,再进行单元测试,单元测试都通过了才能进行打包,发布。
以前使用Ant,最令人头疼的就是要为不同的项目写很多build.xml脚本,而且这些脚本还不太通用,现在我们可以使用Maven2提供的这些经典构建阶段,让每个项目就经过相同的步骤,从源代码一步一步变成可以部署的成品。如果想要什么附加功能,把对应的插件绑定到一个构建阶段上,那么到了执行这个构建阶段的时候,就会执行绑定的插件了。
4.支持多种插件
在http://maven.apache.com/和http://mojo.codehaus.org/上可以找到大量的Maven2插件,通过这些插件可以完成多种多样的扩展功能。
如果想了解maven创建的springmvc工程的话,可以给我留言要demo!