maven基础和基本使用
maven介绍
Maven是基于项目对象模型(POM project object model)实现的,可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具。
具体作用:
项目遇到的编译,测试,运行,打包,部署等一系列操作比较繁琐.
jar(手动的管理jar包依赖) jar包之间冲突,版本适配。(解决jar文件依赖问题)
如果千万级别项目。Project(业务比较复杂) 拆分子项目(便于开发过程中的控制和管理)。
自动部署(便捷了部署过程)
maven安装和配置
1 下载
网址:http://maven.apache.org/ //.zip版本
2 安装
解压:apache-maven-3.5.4-bin.zip
3 配置
配置系统环境变量MAVEN_HOME
配置系统环境变量path
4 测试
cmd> mvn -v
5 配置本地仓库
配置文件:%maven_home%/conf/settings.xml
配置本地仓库:<localRepository>本地仓库路径</localRepository>
6 配置jdk
<profile>
<id>jdk18</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
7 配置中央库
<mirrors>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
</mirrors>
maven使用入门
创建java项目
mvn archetype:generate -DgroupId=com.offcn.maven.quickstart -DartifactId=simple -DarchetypeArtifactId=maven-archetype-quickstart
maven java项目结构
pom.xml 核心配置,项目根下
src/main/java java源码目录
src/main/resources java配置文件目录(maven项目中的配置文件以后都放到这里)
src/test/java 测试源码目录
src/test/resources 测试配置目录
target 输出目录(字节码文件和jar包)
常用的maven命令
mvn clean 清理项目生产的临时文件,一般是模块下的target目录
mvn compile 编译源代码,一般编译模块下的src/main/java目录
mvn package 项目打包工具,会在模块下的target目录生成jar或war等文件
mvn test 测试命令,或执行src/test/java/下junit的测试用例.
mvn install 将打包的jar/war文件复制到你的本地仓库中,供其他模块使用
创建 maven web项目
mvn archetype:generate -DgroupId=com.offcn.maven.quickstart -DartifactId=myWebApp -DarchetypeArtifactId=maven-archetype-webapp -Dversion=0.0.1-snapshot
maven web项目结构
pom.xml 核心配置
src/main/java java源码
src/main/resources java配置
src/main/webapp eclipse web项目中 WebContent目录
|-- WEB-INF
|-- web.xml
src/test 测试
target 输出目录 通过mvn tomcat7:run运行
修改pom.xml文件:
<build>
<finalName>myWebApp</finalName>
<!-- 配置tomcat插件,web端 -->
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<configuration>
<path>/app</path>
<port>8080</port>
</configuration>
</plugin>
</plugins>
</build>
eclipse整合maven
1.eclipse中配置位置
2.取消索引下载
3.配置maven
4.浏览本地仓库,重写构建索引
eclipse中创建maven项目
步骤一:选择“maven project” ,如果右键新建没有,通过other获得
步骤二:选择项目位置,默认不变
步骤三:选择骨架
步骤四:设置项目参数
步骤五 : 用Navigator视图,直接在src/main目录下建立java目录等文件夹
聚合项目
企业开发中最常用
1. 建立父工程,打包方式为pom,管理jar包的版本号,项目中所有工程继承父工程
2.创建module maven,命名为jd_common,通用的工具类
3.创建module maven,服务层工程,pom工程,聚合工程
5.创建module maven,dao层,jar包
6.创建module maven,service层,jar包
7.创建module maven,interface,jar包
8.创建module maven,servlet层,jar包
9.创建module maven,web层,war包 调用其他工程需要引入依赖,更改依赖名称,调用其他jar包需要在网站上搜索定位,然后引入依赖
maven基础和基本使用的更多相关文章
- maven基础知识
1.maven基础知识 1.1maven坐标 maven坐标通常用冒号作为分割符来书写,像这样的格式:groupId:artifactId:packaging:version.项目包含了junit3. ...
- Maven基础
Maven基础 maven核心内容:依赖管理. Maven是Apache组织的开源项目,是项目构建工具.用来管理jar包之间的相互依赖关系 Maven是一个项目构建和管理的工具,提供了帮助管理,构建, ...
- maven 基础
maven安装链接 maven基础命令: 编译命令:mvn compile 测试命令:mvn test 清空命令:mvn clean 打包命令:mvn package 打包命令:mvn install ...
- Maven基础知识详解
1. 简介 Maven在Java领域的应用已经非常广泛了,有了Maven的存在是的开发人员在搭建.依赖.扩展和打包项目上变得非常简单. 2. Windows安装Maven 下载安装包 http ...
- maven基础学习-为什么要用maven,帮助解决了什么问题,怎么解决的,希望以后学习每个知识点都可以这样问下自己
maven基础学习 第1章 Maven介绍 1.1 什么是Maven 1.1.1 什么是Maven Maven 的正确发音是[ˈmevən],而不是"马瘟"以及其他什么瘟.Mave ...
- Maven——基础篇
Maven--基础篇 Maven出现前的问题 一个项目就是一个工程,而工程内一般是通过package包来分模块,比较用户模块,订单模块等,如果项目过于庞大,通过包模块来划分就不太合适,而应该拆分为模块 ...
- Maven 基础标签之版本管理和冲突解决
前言 我们在做java项目的时候由于jar包太多,我们就需要使用maven做项目管理,管理项目的jar包依赖,包括打包上线 maven基础 Maven 是一个项目管理工具,主要用于项目构建,依赖管理, ...
- Maven基础学习笔记
Maven基础学习笔记 下载链接 官网:https://maven.apache.org/ 所有版本:https://archive.apache.org/dist/maven/maven-3/ 阿里 ...
- Maven基础知识和环境搭建
基本概念和生命周期 Maven是现在流行的构建自动化工具,提供了软件构建过程中全生命周期的管理. 基础目录结构 基础目录结构如下: 根目录:存放pom.xml 和所有的子目录 ${basedir}/s ...
- Maven基础学习(一)—Maven入门
一.概述 Maven是一个项目管理工具,它包含了一个项目对象模型(Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管 ...
随机推荐
- Hadoop hadoop 机架感知配置
机架感知脚本 使用python3编写机架感知脚本,报存到topology.py,给予执行权限 import sys import os DEFAULT_RACK="/default-rack ...
- [代码审计]php反序列化漏洞
0x01 php面向对象简介 对象:可以对其做事情的一些东西.一个对象有状态.行为和标识三种属性. 类:一个共享相同结构和行为的对象的集合. 每个类的定义都以关键字class开头,后面跟着类的名字. ...
- 【洛谷】P3537 [POI2012]SZA-Cloakroom
题目描述 有n件物品,每件物品有三个属性a[i], b[i], c[i] (a[i]<b[i]). 再给出q个询问,每个询问由非负整数m, k, s组成,问是否能够选出某些物品使得: 1. ...
- Pycon 北京2019
- 2018-2019-2 网络对抗技术 20165322 Exp9 Web安全基础
2018-2019-2 网络对抗技术 20165322 Exp9 Web安全基础 目录 实验内容与步骤 (一)Webgoat安装 (二)SQL注入攻击 1.命令注入(Command Injection ...
- python编译exe后在windows2003上报错
最近使用python写了一个分析nmon结果的小程序,用的是python3.8.win7环境,pyinstaller生成exe后,在win7上运行一切正常.拿到内网分享给团队成员,在windows20 ...
- 动化安装SQL Server+SP就那么简单
随着业务.企业规模的日益壮大,DB的数量也在不断增多,配置一台新增DB,从服务器的参数配置,磁盘阵列规划,DB安装部署,DB参数调优等等一列步骤下来,手工操作的效率变得越来越低,因为我负责的数据库近些 ...
- 真正的能理解CSS中的line-height,height与line-height
https://blog.csdn.net/a2013126370/article/details/82786681 在最近的项目中,常常用到line-height,只是简单的理解为行高但并没有深层次 ...
- C++11 学习笔记 std::function和bind绑定器
C++11 学习笔记 std::function和bind绑定器 一.std::function C++中的可调用对象虽然具有比较统一操作形式(除了类成员指针之外,都是后面加括号进行调用),但定义方法 ...
- Spring Cloud与Docker微服务架构实战 PDF版 内含目录
Spring Cloud与Docker微服务架构实战 目录 1 微服务架构概述 1 1.1 单体应用架构存在的问题1 1.2 如何解决单体应用架构存在的问题3 1.3 什么是微服务3 1.4 微服务 ...