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),一个依赖管 ...
随机推荐
- RNN梯度消失和爆炸的原因 以及 LSTM如何解决梯度消失问题
RNN梯度消失和爆炸的原因 经典的RNN结构如下图所示: 假设我们的时间序列只有三段, 为给定值,神经元没有激活函数,则RNN最简单的前向传播过程如下: 假设在t=3时刻,损失函数为 . 则对于一 ...
- Anaconda3自带jupyter
1.cmd命令行中输入 JupyterNotebook 2.系统自动调起下面页面(注册端口冲突是打不开的)
- Windows下基于IIS服务的SSL服务器的配置
Windows下基于IIS服务的SSL服务器的配置 实验环境 Windows Server 2008 R1(CA) Windows Server 2008 R2(web服务器) Windows 7 x ...
- [spring-boot] ControllerAdvice异常类
package com.example.demo.exception; import org.springframework.web.bind.annotation.ControllerAdvice; ...
- TP5 查询 字符串条件如何实现
TP5 查询 字符串条件如何实现 当查询条件是 (1,3,8) ,3,4) 这种情况改如何查询呢? 主要用到FIND_IN_SET $where[ ]=>['exp',Db::raw(& ...
- 001 centos7中的安装
以前学习过centos6.4的安装使用,然后新使用centos7,发现有些修改配置变化了,记录一下. 1.修改主机名 查看主机名: 修改: 二:ip的固定 1.参考文章 https://www.jia ...
- Vue CLI3和Vue CLI2环境搭建
关于 Vue CLI 旧版本的安装以及创建项目 1.搭建 vue 的开发环境 ,安装 vue 的脚手架工具 官方命令行工具 npm install --global vue-cli / cnpm in ...
- Dart 自增++自减--和循环语句
void main(){ /* ++ -- 表示自增 自减 1 在赋值运算里面 如果++ -- 写在前面 这时候先运算 再赋值,如果++ --写在后面 先赋值后运行运算 var a=10; var b ...
- netty5拆包问题解决实例
基于之前的例子(参见netty5自定义私有协议实例),我们修改下客户端handler,让发送的数据超过1024字节: NettyClientHandler: /** * 构造PCM请求消息体 * * ...
- ES6深入浅出-3 三个点运算 & 新版字符串-1.函数与对象的语法糖
主要讲的内容 时间充裕的话就讲,模板字面量 默认参数值 首先讲es6之前,我们是怎么做的.例如我们要写一个求和的函数, 请两个参数的和,但是如果有的人就是穿一个参数呢? 那么b没有传值,b的值是多少呢 ...