maven的基本使用
安装:
1、下载maven
http://maven.apache.org/
2、将maven包解压并放置到安装目录
3、添加环境变量M2_HOME,path当中添加;%M2_HOME%\bin;
4、测试,命令行窗口执行mvn -v
配置:
mavne的配置文件:安装目录conf文件夹下的settings.xml
1、配置本地仓库
<localRepository>D:\maven\repository</localRepository>
2、添加镜像仓库
1.阿里云的maven仓库
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
2.开源中国的仓库
<mirror>
<id>nexus-osc</id>
<mirrorOf>central</mirrorOf>
<name>Nexus osc</name>
<url>http://maven.oschina.net/content/groups/public/</url>
</mirror>
<mirror>
<id>nexus-osc-thirdparty</id>
<mirrorOf>thirdparty</mirrorOf>
<name>Nexus osc thirdparty</name>
<url>http://maven.oschina.net/content/repositories/thirdparty/</url>
</mirror>
命令:
创建一个最基本的maven项目
mvn archetype:generate
启动创建项目流程 Generating project in Interactive mode:
1、选择模板类型
1099:remote -> org.apache.maven.archetypes:maven-archetype-quickstart (An archetype which contains a sample Maven project.)
Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 1099:
2、选择版本
Choose org.apache.maven.archetypes:maven-archetype-quickstart version:
1: 1.0-alpha-1
2: 1.0-alpha-2
3: 1.0-alpha-3
4: 1.0-alpha-4
5: 1.0
6: 1.1
Choose a number: 6:
3、输入项目信息
Define value for property 'groupId': tim
Define value for property 'artifactId': test
Define value for property 'version' 1.0-SNAPSHOT: :
Define value for property 'package' tim: : 1.0
Confirm properties configuration:
groupId: tim
artifactId: test
version: 1.0-SNAPSHOT
package: 1.0
Y: : Y
4、创建成功
mvn生成的项目目录
├───src
│ ├───main
│ │ └───java
│ │ └───package
│ └───test
│ └───java
│ └───package
└───target
└───classes
└───package
maven项目采用“约定优于配置”的原则,src/main/java约定用于存放源代码,src/main/test用于存放单元测试代码,src/target用于存放编译、打包后的输出文件。
这是全世界maven项目的通用约定,请记住这些固定的目录结构。
编译:
mvn compile
单元测试:
mvn test
项目打包:
mvn package
清理输出目录targer:
mvn clean
在交互界面中:
Choose a number: 回车
Define value for groupId: 输入组织id,比如com.company
Define value for artifactId:输入项目名称,比如test
Define value for version: 输入版本号,可以直接回车,默认是1.0-SNAPSHOT
Define value for package: java的包名,比如com.company
命令汇总:
创建一个简单的Java工程:mvn archetype:create -DgroupId=com.company.example -DartifactId=Example
创建一个java的web工程:mvn archetype:create -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-webapp -DgroupId=com.mycompany.app -DartifactId=my-webapp
打包:mvn package
编译:mvn compile
编译测试程序:mvn test-compile
清空:mvn clean
运行测试:mvn test
生成站点目录: mvn site
生成站点目录并发布:mvn site-deploy
安装当前工程的输出文件到本地仓库: mvn install
安装指定文件到本地仓库:mvn install:install-file -DgroupId=<groupId> -DartifactId=<artifactId> -Dversion=1.0.0 -Dpackaging=jar -Dfile=<filename.jar>
查看实际pom信息: mvn help:effective-pom
分析项目的依赖信息:mvn dependency:analyze 或 mvn dependency:tree
跳过测试运行maven任务: mvn -Dmaven.test.skip=true XXX
生成eclipse项目文件: mvn eclipse:eclipse
查看帮助信息:mvn help:help 或 mvn help:help -Ddetail=true
查看插件的帮助信息:mvn <plug-in>:help,比如:mvn dependency:help 或 mvn ant:help
maven的基本使用的更多相关文章
- 【分享】标准springMVC+mybatis项目maven搭建最精简教程
文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...
- 理解Maven中的SNAPSHOT版本和正式版本
Maven中建立的依赖管理方式基本已成为Java语言依赖管理的事实标准,Maven的替代者Gradle也基本沿用了Maven的依赖管理机制.在Maven依赖管理中,唯一标识一个依赖项是由该依赖项的三个 ...
- 【微框架】Maven +SpringBoot 集成 阿里大鱼 短信接口详解与Demo
Maven+springboot+阿里大于短信验证服务 纠结点:Maven库没有sdk,需要解决 Maven打包找不到相关类,需要解决 ps:最近好久没有写点东西了,项目太紧,今天来一篇 一.本文简介 ...
- 安装eclipse的maven插件
我们团队用maven来管理项目需要的库文件,其实以前都没听过maven,第一次接触这个,师兄要我直接去装下这个,开始以为还挺简单的,没想到中间遇到了一些小麻烦,现在把我成功安装maven的过程分享下, ...
- MAVEN学习-第一个Maven项目的构建
MAVEN安装成功之后就可以进行项目的构建和管理了: 为什么要用maven进行项目的构建和管理? 对于初学者来说一个最直接的也是最容易里的优点在于JAR包的管理,相对于以前开发一个项目的时候我们需要用 ...
- Maven 代理设置
在maven的安装目录下 %MAVEN_HOME%/conf/setting.xml 中进行设置 <proxies> <!-- proxy | Specificatio ...
- spring maven pom.xml设置
spring pom.xml设置 <?xml version="1.0" encoding="UTF-8"?> <project xmlns= ...
- maven依赖查询地址
http://search.maven.org/#search%7Cga%7C1%7C
- maven 中snapshot版本和release版本的区别
maven中的仓库分为两种,snapshot快照仓库和release发布仓库.snapshot快照仓库用于保存开发过程中的不稳定版本,release正式仓库则是用来保存稳定的发行版本.定义一个组件/模 ...
- Maven多模块,Dubbo分布式服务框架,SpringMVC,前后端分离项目,基础搭建,搭建过程出现的问题
现互联网公司后端架构常用到Spring+SpringMVC+MyBatis,通过Maven来构建.通过学习,我已经掌握了基本的搭建过程,写下基础文章为而后的深入学习奠定基础. 首先说一下这篇文章的主要 ...
随机推荐
- thinkphp方法success和error跳转时间以及返回ajax
Action类的success和error方法第三个参数为数字时候,表示指定页面跳转时间,例如: $,); $,); 如果是ajax跳转 必须用true: $this->success('操作成 ...
- datax部署
1.下载: https://github.com/alibaba/DataX Clone or download下载源码,拉到下面 Quick Start Download DataX下载地址 下载安 ...
- 常用到用css3实现的转换,过渡和动画
为什么要用css动画替换js动画 导致JavaScript效率低的两大原因:操作DOM和使用页面动画. 通常我们会通过频繁的操作 DOM的CSS来实现视觉上的动画效果,导致js效率低的两个因素都包括在 ...
- 03 深入远程执行:target目标、模块modules、返回returns
0.学习目的 http://docs.saltstack.cn/topics/execution/index.html 官方文档 0.1 命令解释 [root@host---- ~]# salt ' ...
- HDU 6038 - Function | 2017 Multi-University Training Contest 1
/* HDU 6038 - Function [ 置换,构图 ] 题意: 给出两组排列 a[], b[] 问 满足 f(i) = b[f(a[i])] 的 f 的数目 分析: 假设 a[] = {2, ...
- 激活WebStorm2017.3.1
亲测有效,测试日期:20181202 转发自:https://blog.csdn.net/bjzhaoxiao/article/details/81486490
- android动态加载
转载自: http://www.cnblogs.com/over140/archive/2012/03/29/2423116.html http://www.cnblogs.com/over140/a ...
- ACM-ICPC 2018 沈阳赛区网络预赛 G Spare Tire (素因子分解+容斥)
. 样例输入复制 4 4 样例输出复制 14 #include<bits/stdc++.h> using namespace std; typedef long long ll; cons ...
- ValseWebninar 报告汇总
ValseWebninar为计算机视觉.图像处理.模式识别与机器学习等研究领域内的华人青年学者提供深入学术交流的舞台. 20191218:基于视觉和常识的深度推理 主持人: 主讲人: 2019 ...
- Jmeter(六)关联之XPath提取器
如果请求返回的消息为xml或html格式的,可以用XPath提取器来提取需要的数据 以http://www.weather.com.cn/为例: 先新建一个HTTP请求GetCityURL,获取城市天 ...