from:http://blog.csdn.net/lazy_p/article/details/6732277
这篇文章,基本上算是讲清楚的。个别文字有错误,我修正了一下。
一、建立maven web项目
1.1选择建立MavenProject
选择File -> New ->Other...,在New窗口中选择Maven -> Maven Project。点击Next >。
1.2选择项目路径
Use default Workspace location默认工作空间。点击Next>。
1.3选择项目类型
在Artifact Id中选择maven-archetype-webapp。点击Next>。
1.4输入GroupID和ArtifactID,以及Package
Group ID一般写大项目名称。ArtifactID是子项目名称。
例如Spring的web包,GroupID:org.springframework,artifactId:spring-web。
Package是默认给你建一个包,不写也可以。点击Finish。
1.5刚建立好后的文件结构如下图
这里,顺便提一下,我使用的eclipse ide版本是Java EE,版本是indigo。
2,配置项目
接下来就需要更改好多配置了。
2.1把项目变成DynamicWeb项目
2.1.1 右键项目,选择ProjectFacets,点击Convert to faceted form
2.1.2 配置Project Facets
勾选Dynamic Web Module,版本设置为2.5(3.0为Java7的):
2.1.3 配置Modify Faceted Project
点击Further configurationavailable…,弹出Modify Faceted Project窗口
此处是设置web.xml文件的路径,我们输入src/main/webapp。
Generate web.xml deployment descriptor自动生成web.xml文件,可选可不选。
点击OK,再点击OK。
此时,工程目录结构为:
2.2设置部署程序集(WebDeployment Assembly)
右键项目打开此窗口。在左侧列表中会出现一个Deployment Assembly,点击进去后,如下图:
此处列表是,部署项目时,文件发布的路径。
1,我们删除test的一项,因为test是测试使用,并不需要部署。
2,设置将Maven的jar包发布到lib下。
Add... -> Java Build Path Entries -> Maven Dependencies -> Finish
设置完成效果图
使用MavenPOMeditor打开项目中的pom.xml文件,选择Dependencies,在Dependencies栏目点击Add进行,首先弹出一个搜索按钮,例如输入jsf,就会自动搜索关于JSF相关的jar包,我们选择2.0.4版本的jsf。将jsf包全部添加进来。需要添加的其他jar包有:junit、jstl。或者点击pom.xml直接编辑pom.xml文件。这样可以直接copy过来dependencies内容。
注意,如果不会搜索怎么办?参考:http://memory.blog.51cto.com/6054201/1141693
我们的pom.xml文件可直接复制下面的内容。
<projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>RulesMaven</groupId> <artifactId>RulesMaven</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>RulesMavenMavenWebapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-api</artifactId> <version>2.0.4-b09</version> </dependency> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-impl</artifactId> <version>2.0.4-b09</version> </dependency> <dependency> <groupId>org.primefaces</groupId> <artifactId>primefaces</artifactId> <version>2.2.1</version> </dependency> <dependency> <groupId>org.primefaces.themes</groupId> <artifactId>aristo</artifactId> <version>1.0.0</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency>
</dependencies> <build> <finalName>RulesMaven</finalName> </build> </project>
|
对着工程点右键:RunAs -> Maven install
然后再RunAs -> Maven package.
生成完后用Tomcat跑即可。
1,新建WTP服务器
右键New—other—server
配置tomcat服务器
双击tomcatv6.0 server at localhost
选择modules
添加要发布的models
启动服务器运行。
以上部分和Java EE版本的操作略有差别,但是,大同小异,估计,使用Java EE版本的Eclipse的同学,问题不大。这样创建出来的工程,依然可以支持直接部署,调试,或运行。