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基础和基本使用的更多相关文章

  1. maven基础知识

    1.maven基础知识 1.1maven坐标 maven坐标通常用冒号作为分割符来书写,像这样的格式:groupId:artifactId:packaging:version.项目包含了junit3. ...

  2. Maven基础

    Maven基础 maven核心内容:依赖管理. Maven是Apache组织的开源项目,是项目构建工具.用来管理jar包之间的相互依赖关系 Maven是一个项目构建和管理的工具,提供了帮助管理,构建, ...

  3. maven 基础

    maven安装链接 maven基础命令: 编译命令:mvn compile 测试命令:mvn test 清空命令:mvn clean 打包命令:mvn package 打包命令:mvn install ...

  4. Maven基础知识详解

    1. 简介   Maven在Java领域的应用已经非常广泛了,有了Maven的存在是的开发人员在搭建.依赖.扩展和打包项目上变得非常简单. 2. Windows安装Maven 下载安装包   http ...

  5. maven基础学习-为什么要用maven,帮助解决了什么问题,怎么解决的,希望以后学习每个知识点都可以这样问下自己

    maven基础学习 第1章 Maven介绍 1.1 什么是Maven 1.1.1 什么是Maven Maven 的正确发音是[ˈmevən],而不是"马瘟"以及其他什么瘟.Mave ...

  6. Maven——基础篇

    Maven--基础篇 Maven出现前的问题 一个项目就是一个工程,而工程内一般是通过package包来分模块,比较用户模块,订单模块等,如果项目过于庞大,通过包模块来划分就不太合适,而应该拆分为模块 ...

  7. Maven 基础标签之版本管理和冲突解决

    前言 我们在做java项目的时候由于jar包太多,我们就需要使用maven做项目管理,管理项目的jar包依赖,包括打包上线 maven基础 Maven 是一个项目管理工具,主要用于项目构建,依赖管理, ...

  8. Maven基础学习笔记

    Maven基础学习笔记 下载链接 官网:https://maven.apache.org/ 所有版本:https://archive.apache.org/dist/maven/maven-3/ 阿里 ...

  9. Maven基础知识和环境搭建

    基本概念和生命周期 Maven是现在流行的构建自动化工具,提供了软件构建过程中全生命周期的管理. 基础目录结构 基础目录结构如下: 根目录:存放pom.xml 和所有的子目录 ${basedir}/s ...

  10. Maven基础学习(一)—Maven入门

    一.概述      Maven是一个项目管理工具,它包含了一个项目对象模型(Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管 ...

随机推荐

  1. 15.linux iptables防火墙规则vsftp服务

    一.服务所开启的端口号.          dhcp 67       samba 139 445       http 80  https 443       mysql 3306         ...

  2. macbook ios recovery and mount hfs+ journal and revert

    sudo fsck.hfsplus -fryd /dev/sdc2 /sbin/fsck_hfs -yprd /dev/partitionName---can not fix b-tree node ...

  3. 震惊,hexo个人博客居然有这么方便的评论系统

    论文搞得一头火,瞎倒腾了一下,没想到几分钟给自己的博客换了个评论系统. 之前用的gitalk,需要依赖github,死活没有成功,而且评论者还需要登录github才可以评论,不好用,刚才偶然间发现va ...

  4. C前序遍历二叉树Morris Traversal算法

    首先来递归算法,简单易懂: #include <stdio.h> #include <stdlib.h> #include <stdbool.h> typedef ...

  5. ThinkPHP5使用phpspreadsheet导入导出Excel

      引用类: use PhpOffice\PhpSpreadsheet\IOFactory; use PhpOffice\PhpSpreadsheet\Cell\Coordinate; use Php ...

  6. KS(Kolmogorov-Smirnov)值

    KS(Kolmogorov-Smirnov)值越大,表示模型能够将正.负客户区分开的程度越大.KS值的取值范围是[0,1] ks越大,表示计算预测值的模型区分好坏用户的能力越强. ks值 含义 > ...

  7. https://suchprogramming.com/epoll-in-3-easy-steps/

    https://suchprogramming.com/epoll-in-3-easy-steps/ https://www.quora.com/What-are-the-key-difference ...

  8. Diffie-Hellman算法简介

    一.DH算法是一种密钥交换协议,它可以让双方在不泄漏密钥的情况下协商出一个密钥来. DH算法基于数学原理,比如小明和小红想要协商一个密钥,可以这么做: . 小明先选一个素数和一个底数,例如,素数p=, ...

  9. redis-cli 使用密码登录

    #./redis-cli 输入auth +空格+ 刚才设置的密码 成功

  10. 【原创】aws s3 lambda缩略图生成

    参考资料: https://github.com/sagidm/s3-resizer https://aws.amazon.com/cn/blogs/compute/resize-images-on- ...