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),一个依赖管 ...
随机推荐
- docker run 参数含义
-a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项: -d: 后台运行容器,并返回容器ID: -i: 以交互模式运行容器,通常与 -t 同时使用: ...
- Mono Features of cheat engine
If you attach to a process/game that uses mono, you should see a new "Mono" menu item on t ...
- SpringBoot访问不了JSP但却能进入后台
博主在使用sring-boot跳转HTML页面后,由于好奇心就想跳转到JSP页面,就在网上搜相关信息,结果不是跳转500错误就是下载JSP文件.各种坑啊,在博主跳了N多坑后,终于跳转JSP页面成功.故 ...
- git 删除远程和本地分支
RenGuoQiang@PC-RENGUOQIANG MINGW64 /d/zgg/zgg-crm (dev-rgq-userworkstatus) $ git push origin --delet ...
- MySQL 行转列 -》动态行转列 -》动态行转列带计算
Pivot Table Using MySQL - A Complete Guide | WebDevZoomhttp://webdevzoom.com/pivot-table-using-mysql ...
- Amazon aws s3 加速
aws s3加速 - 工长山的专栏 - CSDN博客https://blog.csdn.net/xuanwu_yan/article/details/79160034 [实测有效]“解决国内访问s3. ...
- linux内核中i2c驱动中slave模式接口的调用
1. 关注unreg_slave接口 1.1 这个接口在哪里被调用呢? 在drivers/i2c/i2c-core-slave.c中 int i2c_slave_unregister(struct i ...
- 小D课堂 - 零基础入门SpringBoot2.X到实战_第1节零基础快速入门SpringBoot2.0_1、SpringBoot2.x课程介绍和高手系列知识点
1 ======================1.零基础快速入门SpringBoot2.0 5节课 =========================== 1.SpringBoot2.x课程全套介绍 ...
- Flutter页面跳转返回数据
Dart中的异步请求和等待和ES6中的方法很像,直接使用async...await就可以实现. 核心代码: _navigateToAddress(BuildContext context) async ...
- typescript属性类型接口
/* typeScript中的接口 - 1.属性类接口 */ /* 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用.接口定 ...