序,学习配置pom.xml,利用maven生成eclipes项目。

一、编写POM

POM Project Obejct Model,项目对象模型。

编写pom.xml,新建文件夹hello-world,新建名为pom.xml的文件,输入如下:

MVN三大坐标,groupId定义了项目属于哪个组,artifactId定义了当前mvn项目在组中唯一的ID,version指定了artifactId的版本,SNAPSHOT表示快照版本,不稳定。name为项目定义了一个更为友好的名称。

<?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><!--POM模型版本号,对于maven2和maven3,它只能是4.0-->
<groupId>com.juvenxu.mvnbook</groupId><!--坐标1-->
<artifactId>hello-world</artifactId><!--坐标2-->
<!--<packaging>jar</packaging>-->
<version>1.0-SNAPSHOT</version><!--坐标3-->
<name>Maven Hello World Project</name>
<!--<description>Spring Framework: Core</description>
<url>http://www.springframework.org</url> <licenses>
<license>
...
</license>
</licenses>
<scm>
...
</scm>
<organization>
...
</organization>
<dependencies>
<dependency>
....
</dependency>
</dependencies>
<distributionManagement>
<repository>
...
</repository>
<snapshotRepository>
...
</snapshotRepository>
</distributionManagement>-->
</project>

二、编写主代码

maven约定把主代码放到src/main/java/目录下,maven会自动搜寻该目录找到项目主代码。

目录结构如下:

code:

package com.juvenxu.mvnbook.helloworld;

public class HelloWorld{
public String sayHello(){
return "Hello Maven";
}
public static void main(String[] args){
System.out.print(new HelloWorld().sayHello());
}
}

maven clean compile

三、编写测试代码

测试代码需要用到Junit,因此pom.xml需要添加依赖。

scope为test表示该依赖只对测试有效

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

mvn clean test报错,由于历史原因maven的核心插件之一-compiler插件默认只支持编译Java1.3,需要配置该插件使其支持Java5.

<build>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
</build>

四、打包和运行

mvn clean install

将main方法添加进jar包,需要借助maven-shade-plugin。配置该插件如下:

五、使用Archetype生成项目骨架

    mvn archetype:generate

六、m2eclipse简单使用

1 导入maven项目

2 创建maven项目

3 运行mvn命令

七、NetBeans Maven插件简单使用

有兴趣的可以自己去查,此处不过多介绍。

Maven初级学习(二)Maven使用入门的更多相关文章

  1. Maven初级学习(一)手把手教你Maven安装

    序:学习安装Maven,在Windows和Unix系统上. 一.Windows系统安装MVN 前提正确安装JDK1.5以上的版本 1 下载最先版Mvn http://maven.opache.org/ ...

  2. Maven基础学习(一)—Maven入门

    一.概述      Maven是一个项目管理工具,它包含了一个项目对象模型(Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管 ...

  3. Java开发学习(二十三)----SpringMVC入门案例、工作流程解析及设置bean加载控制

    一.SpringMVC概述 SpringMVC是隶属于Spring框架的一部分,主要是用来进行Web开发,是对Servlet进行了封装.SpringMVC是处于Web层的框架,所以其主要的作用就是用来 ...

  4. maven系列之二maven项目的创建和maven项目的结构

    maven系列之一简单介绍了maven的基本信息,安装和配置,大家对maven有一个大概的了解,但是在maven项目开发中远远不够,为了进一步了解maven,现在我们介绍maven项目的创建和mave ...

  5. Maven学习 二 Maven环境搭建

    第一步:下载Maven并解压 注意选择镜像地址,选择国内的会快点 解压目录 Maven目录分析 bin:含有mvn运行的脚本 boot:含有plexus-classworlds类加载器框架 conf: ...

  6. Maven学习(二)-----Maven启用代理访问

    Maven启用代理访问 如果你的公司正在建立一个防火墙,并使用HTTP代理服务器来阻止用户直接连接到互联网.如果您使用代理,Maven将无法下载任何依赖. 为了使它工作,你必须声明在 Maven 的配 ...

  7. Maven初级学习(三)常用命令

    依赖关系查看 mvn dependency:list #列表形式展示依赖 mvn dependency:tree #层级关系展示依赖 mvn dependency:analyze #依赖分析 声明周期 ...

  8. 大数据初级笔记二:Hadoop入门之Hadoop集群搭建

    Hadoop集群搭建 把环境全部准备好,包括编程环境. JDK安装 版本要求: 强烈建议使用64位的JDK版本,这样的优势在于JVM的能够访问到的最大内存就不受限制,基于后期可能会学习到Spark技术 ...

  9. Redis学习二:Redis入门介绍

    一.入门概述 1.是什么 Redis:REmote DIctionary Server(远程字典服务器) 是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内 ...

随机推荐

  1. [NOIP2015] 提高组 洛谷P2661 信息传递

    题目描述 有n个同学(编号为1到n)正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为i的同学的信息传递对象是编号为Ti同学. 游戏开始时,每人都只知道自己的生日.之后每一 ...

  2. HDU 2795 Billboard

    Description 在学校的入口处有一个巨大的矩形广告牌,高为h,宽为w.所有种类的广告都可以贴,比如ACM的广告啊,还有餐厅新出了哪些好吃的,等等..   在9月1号这天,广告牌是空的,之后广告 ...

  3. 原生JS中常用的Window和DOM对象操作汇总

    一.常用的Window对象操作 Window对象中又包含了document.history.location.Navigator和screen几个对象,每个对象又有自己的属性方法,这里window可以 ...

  4. AngularJs angular.identity和angular.noop

    angular.identity 函数返回本身的第一个参数.这个函数一般用于函数风格. 格式:angular.identity() 使用代码: (function () { angular.modul ...

  5. 支持向量机(SVM)入门

    一.简介 支持向量机,一种监督学习方法,因其英文名为support vector machine,故一般简称SVM. 通俗来讲,它是一种二类分类模型,其基本模型定义为特征空间上的间隔最大的线性分类器, ...

  6. 将文件路径以"\"隔开

    将文件路径以"\"隔开,这货搞了我一小时...C++返回一维数组,字符串数组还是要再看看 ]) { ; //string s_array[30]; //局部变量,如果使用retur ...

  7. JSP 自定义标签

    0 标签技术的API继承体系 1 作用 jsp自定义标签用于移除页面中的java代码 2 实现 2.1 标签处理类ViewIPTag.java package com.zsm.util; import ...

  8. javascript的propertyIsEnumerable()方法使用介绍

    hasOwnProperty() 方法用来判断某个对象是否含有指定的自身属性. propertyIsEnumerable()是用来检测属性是否属于某个对象的,如果检测到了,返回true,否则返回fal ...

  9. ecshop Admin后台删除(Ajxa删除,无跳转连接)

    关联文件Admin/goods.php?act=trash,     Admin/js/listtable.js html代码 <a href="javascript:;" ...

  10. JQM页面跳转,多种效果

    <div data-role="page" id="pageone"> <div data-role="header"&g ...