Maven入门

来源:互联网 发布:年度网络新词 编辑:程序博客网 时间:2024/06/06 04:08

Maven入门

Maven的目录结构

src    -main        -java            -package    -test        -java            -package    -resources

groupId的值就是项目的包名
artifactId的值是模块名,建议使用项目名
version表示版本

常用构建命令

  • mvn -v 查看maven版本
  • compile 编译
  • test 测试
  • package 打包
  • clean 删除targettarget中存放的是项目结果编译的字节码文件和测试报告
  • install 安装jar包到本地仓库中

创建目录的两种方式:
1. archetype:generate 按照提示进行选择
2. archetype:generate - DgroupId=组织名,公司网址的反写+项目名 -DartifactId=项目名-模块名 -Dversion=版本号 -Dpackage代码所存在的包名

安装Maven

  • Mac OS X下Maven的安装与配置

pom.xml文件解析

  • Maven的pom.xml介绍

依赖范围
scope:表示依赖项目的一个作用范围。

  • compile:默认值,编译测试运行都有效
  • provided:在编译和测试时有效
  • runtime:在测试和运行时有效
  • test:只在测试时有效
  • system:在编译和测试时有效
  • import:导入的范围,它只使用在dependencyManagement中,表示从其它的pom中导入dependency的配置

使用Maven构建web项目
创建后会提示The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path index.jsp /webapp/src/main/webapp
,是因为是没有servlet-api的缘故,添加Servlet依赖:

    <dependency>        <groupId>javax.servlet</groupId>        <artifactId>javax.servlet-api</artifactId>        <version>3.0.1</version>        <!-- 只在测试时和编译时运行 -->        <scope>provided</scope>    </dependency>

检查目录,会发现只创建了resource目录
检查目录

创建src/main/javasrc/test/java目录

创建目录

然后,在Project Facets中要选上Dynamic Web Module

这里写图片描述

然后,调整部署的代码,在Deployment Assembly中删除/src/test相关的测试文件

使用Jetty作为web容器
在pom.xml中配置

<build>    <finalName>webapp</finalName>    <plugins>        <plugin>            <groupId>org.mortbay.jetty</groupId>            <artifactId>jetty-maven-plugin</artifactId>            <version>8.1.16.v20140903</version>            <executions>                <execution>                    <!-- 在打包成功后使用jetty:run来运行jetty服务 -->                    <phase>package</phase>                    <goals>                        <goal>run</goal>                    </goals>                </execution>            </executions>        </plugin>    </plugins></build>

在浏览器输入http://localhost:8080

使用tomcat作为web容器
需要加入tomcat的maven插件
Maven Plugin

  <plugins>    <plugin>      <groupId>org.apache.tomcat.maven</groupId>      <artifactId>tomcat6-maven-plugin</artifactId>      <version>2.2</version>    </plugin>    <plugin>      <groupId>org.apache.tomcat.maven</groupId>      <artifactId>tomcat7-maven-plugin</artifactId>      <version>2.2</version>    </plugin>  </plugins>

在浏览器输入http://localhost:8080/webapp/

0 0
原创粉丝点击