Maven入门:开始简单的web项目

  由于工作需求,前段时间接触了maven这个项目构建和管理工具,这里就不赘述介绍maven了,google一下到处都有。Myeclipse已经集成了maven,省去了安装maven插件的过程,只需要进行简单的配置就可以开始maven之旅了。

Maven入门:开始简单的web项目_第1张图片Maven入门:开始简单的web项目_第2张图片

  接下来建一个简单的Web项目。

  New -> Other -> Maven Project -> Next -> select an Archetype页面选择maven-archetype-webapp -> 输入groupId和artifactId -> Finish。

Maven入门:开始简单的web项目_第3张图片

Maven入门:开始简单的web项目_第4张图片

  完成后会得到maven项目的基本框架。开发Web项目,当然少不了编写servlet,所以得先添加servlet的依赖包。maven的依赖包全部由pom.xml进行统一管理,当需要用到依赖包时,我们只需要在pom.xml中进行配置,保存后maven会自动从中央仓库下载到本地仓库,完成后就可以使用该依赖包了。在pom.xml加入以下配置:

	
		javax.servlet
		servlet-api
		2.4
		provided
	
    
	
	  javax.servlet.jsp
	  jsp-api
	  2.2
	  provided
	
  之后就可以像开发普通Web项目一样进行代码编写了。不过maven有个约定,java代码要放在src/main/java目录下,测试代码要放在src/test/java目录下。当要用到依赖包时,可以到http://mvnrepository.com/搜索相应的配置,添加到pom.xml中即可。

  完成编码后,接下来就是构建项目,这是maven的核心功能之一。右键pom.xml,debug as Maven build...,在Goals中输入要执行的目标指令后点击run即可,比如输入clean compile package,即可完成对项目的清理、编译、打包和部署。更多的目标指令可参考maven官网或相关文档。

Maven入门:开始简单的web项目_第5张图片

  构建过程中可能会碰到以下报错,在IDE的Installed JRE中添加tools.jar即可。(用eclipse自己装maven插件后搭maven项目碰到过这个问题,不过用Myeclipse没出现)

[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] Unable to locate the Javac Compiler in:
  C:\Java\jre7\..\lib\tools.jar
Please ensure you are using JDK 1.4 or above and
not a JRE (the com.sun.tools.javac.Main class is required).
In most cases you can change the location of your Java
installation by setting the JAVA_HOME environment variable.
  构建项目还可能出现IDE卡死的情况,一般在eclipse下的eclipse.ini加入以下配置即可:
-XX:PermSize=256M
-XX:MaxPermSize=256M
  完成项目构建后,我们当然会希望项目能运行起来,通过浏览器来访问项目提供的UI。在传统的web开发中,可能得下载个tomcat,集成到IDE,部署项目,然后才能访问。然而,用maven后,一切变得简单起来。所有我们需要做的只是在pom.xml中加入以下的配置即可:
  
    maven-web
    
    
		
			org.mortbay.jetty
			jetty-maven-plugin
			
				10
				
					/maven
				
				
					
						8080
						60000
					
				
			
		
    
    
  
  这里用到的web容器是jetty而不是tomcat,关于两者的区别可以自己google,这里就不啰嗦了。

构建项目,然后在Maven build输入目标jetty:run,如果过程不报错,并出现Started Jetty Server字样,赶快用浏览器访问一下你的第一个maven项目吧,是不是相当的方便和有趣呢?

你可能感兴趣的:(Maven)