maven-使用入门

一.  编写pom

在项目根目录下编写

<?xml version="1.0" encoding="UTF-8"?>
 <project xmlns="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.0 http://maven.apache.org/maven-v4_0_0.xsd ">
 
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.zqmlxl.app</groupId>
  <artifactId>hello-world</artifactId>
  <version>1.0-SNAPSHOT</version>
  <name>my hello world maven project</name>
 </project>

maven2和maven3中modelVersion必须为4.0.0

groupId一般以公司信息起名

artifactId一般以项目信息起名

version版本号,SNAPSHOT意为快照,项目还在开放中,是不稳定版本

name填写该元素以方便信息交流

二. 编写主代码

 package main.java.com.zqmlxl.app.helloworld;

public class HelloWorld {

 public String sayHello(){
  return "hello world!";
 }

}

默认情况下,maven假设项目主代码位于src/main/java

目录

在项目根目录下运行mvn clean compile编译项目

三. 编写测试代码

添加依赖,修改pom.xml,添加如下内容

<dependencies>
   <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.7</version>
    <scope>test</scope>
   </dependency>
  </dependencies>

junit测试代码:

 package com.zqmlxl.app.helloworld;


import org.junit.Assert;
import org.junit.Test;

import com.zqmlxl.app.helloworld.HelloWorld;


public class HelloworldTest {

 @Test
 public void test() {
  HelloWorld entity = new HelloWorld();
  String result = entity.sayHello();
  Assert.assertEquals("hello world", result);
 }

}

在项目根目录运行

mvn clean test

四. 打包运行

mvn clean package

mvn clean install

运行jar中的main方法需修改pom.xml

<?xml version="1.0" encoding="UTF-8"?>
 <project xmlns="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.0 http://maven.apache.org/maven-v4_0_0.xsd ">
 
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.zqmlxl.app</groupId>
  <artifactId>hello-world</artifactId>
  <version>1.0-SNAPSHOT</version>
  <name>my hello world maven project</name>
  <build>
   <plugins>
    <plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-shade-plugin</artifactId>
     <version>1.2.1</version>
     <executions>
      <execution>
       <phase>package</phase>
       <goals>
        <goal>shade</goal>
       </goals>
       <configuration>
        <transformers>
         <transfomer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
          <mainClass>com.zqmlxl.app.helloworld.HelloWorld</mainClass>
          
         </transfomer>
        </transformers>
       </configuration>
      </execution>
     </executions>
    </plugin>
   </plugins>
  </build>
  <dependencies>
   <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.7</version>
    <scope>test</scope>
   </dependency>
  </dependencies>
 </project>

五. 使用archetype生成项目骨架

maven3中直接输入一下命令

mvn archetype:generate

maven2

mvn org.apache.maven.plugins:maven-archetype-plugin:2.0-alpha-5:generate

六. m2eclipse简单使用

1. 导入maven项目

file->import->maven project->next->选择项目根目录->finish

2. 创建maven项目

file->new->other->maven project -> next->使用默认选项,next->双击maven-archetype-quickstart->next->输入groupId .artifactId,version,package等信息->finish

3. 运行mvn命令

右键maven项目->Run as

如果需要自定义,就选maven build选项,填写Goals信息即可

猜你喜欢

转载自michaelzqm.iteye.com/blog/1493726