一、Maven 简介

Maven 官网:http://maven.apache.org/

二、Maven 安装与配置

Maven 下载:http://maven.apache.org/download.cgi
首先要确定jdk 已经安装和配置
把maven 解压到放到D 盘
配置maven 环境变量:M2_HOME D:\maven\apache-maven-3.3.3

配置path:找到Path在环境变量值尾部加入:;%M2_HOME%\bin;  //前面注意分号

maven安装与配置参考博客:https://www.cnblogs.com/yyiou/archive/2017/08/22/7411409.html

三、Maven Hello World 实现

modelVersion:POM 模型版本4.0.0 固定
groupId:一般指某个公司或者某个组织的某个项目比如org.springframework
artifactId:一般指某个具体项目的某个具体模块比如spring-context
Version:项目的版本
Maven 常见命令
Mvn compile 编译
Mvn clean 清空
Mvn test 测试
Mvn package 打包
Mvn install 把项目安装到本地仓库
Mvn 远程仓库地址:http://mvnrepository.com/

maven仓库默认地址是C:\Users\CY\.m2\repository

我这边已经修改了maven仓库的地址:

E:\maven\apache-maven-3.3.3\conf\settings.xml中增加如下配置:

<localRepository>E:\maven\repository</localRepository>

运用的小例子:

根据maven的要求,手动新建如下项目:

新建HelloWorld项目,并且建好对应的文件夹:

HelloWorld\src\main\java  --- 实际写代码的地方

HelloWorld\src\test           ---测试代码的地方

HelloWorld\target            --- 项目编译后,文件存放的地方

1)新建HelloWorld.java:

package com.cy.helloWorld;

public class HelloWorld{

    public String sayHello(){
return "Hello World!";
} public static void main(String []args){
System.out.println(new HelloWorld().sayHello());
}
}

HelloWorld\src\main\java\com\cy\helloWorld

cmd中进入项目,输入:

编译:

F:\HelloWorld>mvn compile

编译成功后会发现多了如下class:

F:\HelloWorld\target\classes\com\cy\helloWorld\HelloWorld.class

2)mvn clean

F:\HelloWorld>mvn clean

就会把刚才的target文件夹删掉了;

3)新建HelloWorldTest.java:

HelloWorld\src\test\java\com\cy\helloWorld\HelloWorldTest.java

package com.cy.helloWorld;
import org.junit.Test; public class HelloWorldTest{ @Test
public void testSayHello(){
HelloWorld helloWorld=new HelloWorld();
String result=helloWorld.sayHello();
System.out.println(result);
}
}

上面因为我们使用到了junit,要在pom.xml中添加依赖,在maven远程仓库地址http://mvnrepository.com/中输入junit,找到对应的版本,找到maven的依赖xml,可以直接复制,这是找到的:

<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>

HelloWorld\pom.xml:

<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.cy.HelloWorld</groupId>
<artifactId>HelloWorld</artifactId>
<version>0.0.1-SNAPSHOT</version> <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency> </dependencies>
</project>

编译完后,运行:

F:\HelloWorld>mvn test

可以看到输出结果:

-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running com.cy.helloWorld.HelloWorldTest
Hello World!
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.049 sec Results : Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 [INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.553 s
[INFO] Finished at: 2018-03-23T22:39:16+08:00
[INFO] Final Memory: 12M/244M
[INFO] ------------------------------------------------------------------------

4)mvn package 运行后,会发现F:\HelloWorld\target下多了文件:

HelloWorld-0.0.1-SNAPSHOT.jar

四、Maven 本地仓库迁出C 盘

配置setting 文件
<localRepository>D:\maven\repository</localRepository>

上面三种已经修改了

maven学习(1)-简介与安装的更多相关文章

  1. maven学习(1)下载和安装和初步使用(手动构建项目和自动构建项目)

    1:背景 关于项目的搭建,有些人使用开发工具搭建项目,然后将项目所依赖第三方jar 复制到类路径下面,上述搭建方式没有第三方类库的依赖关系,在导入一个jar包的时候,这个jar包还可能依赖其他jar包 ...

  2. Maven学习笔记(1)之安装Maven

    此笔记是学习Maven时自己摸索+各种百度而来,并非全部原创,望与各位一同学习,勿拍~勿拍~ 安装步骤 1.下载Maven的最新版本,地址:http://maven.apache.org/downlo ...

  3. Maven学习(一) -- 安装Maven及Eclipse中配置Maven

    标签(空格分隔): 学习笔记 本文环境:Windows7, JDK1.7.0_76 安装及配置Maven环境变量 需要电脑中已经有Java环境 在控制台中输入:echo %JAVA_HOME%看是否能 ...

  4. Maven入门之简介与安装

    一.Maven简介 1.什么是Maven? Maven是一个项目管理工具和集成编译工具,它主要包含如下内容: –一个项目对象模型(Project Object Model), –一组标准集合, –一个 ...

  5. Maven学习 一 (下载安装)

    Maven简介 Apache Maven 是一个软件项目管理工具.基于项目对象模型(project Object Model ,POM)的概念,Maven可用来管理项目的依赖,编译,文档等信息 使用M ...

  6. Maven学习(一)安装 配置

    安装环境 windowXP 32 下载地址 http://maven.apache.org/download.cgi 安装包 apache-maven-3.2.3.zip 一.安装 Step1 解压缩 ...

  7. solr 学习之简介及安装

    一.solr简介 Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器.Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展,并对索 ...

  8. Redis 学习之简介及安装

    一.redis简介 Redis是一个开源的,先进的key-value存储.它通常被称为数据结构服务器,因为键可以包含字符串.哈希.链表.集合和有序集合. 支持的数据类型:string(字符串).lis ...

  9. 大数据技术之_11_HBase学习_01_HBase 简介+HBase 安装+HBase Shell 操作+HBase 数据结构+HBase 原理

    第1章 HBase 简介1.1 什么是 HBase1.2 HBase 特点1.3 HBase 架构1.3 HBase 中的角色1.3.1 HMaster1.3.2 RegionServer1.3.3 ...

  10. Maven学习 (二) Eclipse 上安装 Maven3插件

    eclipse 安装插件的方式最常见的有两种: 1. 一种是在线安装,这貌似是用的最多的,就是:Help  -->  Install New Software,然后输入 HTTP 地址来安装,但 ...

随机推荐

  1. bzoj3404

    题解: 博弈论 然而我直接暴力dp 代码: #include<bits/stdc++.h> using namespace std; ; int f[N],n,T; void init() ...

  2. CUDA ---- Memory Model

    Memory kernel性能高低是不能单纯的从warp的执行上来解释的.比如之前博文涉及到的,将block的维度设置为warp大小的一半会导致load efficiency降低,这个问题无法用war ...

  3. L220

    He must not allow this unusual barrier (obstacle) to stop him from fighting against the enemy.他绝不能让这 ...

  4. OC基础:属性.点语法.KVC 分类: ios学习 OC 2015-06-24 17:24 61人阅读 评论(0) 收藏

    属性:快速生成setter和getter 属性也包括:声明和实现 1.属性的声明写在.h中 格式:@property 数据类型 变量名; 如果实例变量一致的时候,属性的声明可以合并,每一个属性之间使用 ...

  5. ubuntu 部署wordPress

    准备 LAMP 环境 1.安装 Apache2 sudo apt-get install apache2 -y 安装好后,您可以通过访问服务器IP地址 x.x.x.x 查看到 “it works” 界 ...

  6. Spring的事件发布机制

    一:Spring的事件发布 ApplicationContext提供了针对Bean的事件传播功能,其中的主角是publishEvent()方法,通过这个方法可以将事件通知给系统内的监听器(需实现App ...

  7. Visual Studio 2017 以前的旧格式的 csproj Import 进来的 targets 文件有时不能正确计算属性(PropertyGroup)和集合(ItemGroup)

    我在之前的博客中有教大家如何编写 NuGet 工具包,其中就有编写 .targets 文件. 我在实际的使用中,发现 Visual Studio 2017 带来的含 Sdk 的新 csproj 格式基 ...

  8. (1)json和pickle序列化模块

    json 和pickle 模块 json和pickle模块下都有4个功能 dumps  <---> loads  (序列化 <--->反序列化) dump <---> ...

  9. Java-如何不使用-volatile-和锁实现共享变量的同步操作

    from: http://thinkinjava.cn/2018/06/Java-%E5%A6%82%E4%BD%95%E4%B8%8D%E4%BD%BF%E7%94%A8-volatile-%E5% ...

  10. V4L2 subdev

    除了通过v4l2_subdev_ops结构体暴露kernel API,V4L2 sub-devices也可以被用户空间应用直接控制.v4l-subdevX的设备节点可以在/dev下被创建来直接访问su ...