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. vue.js 中使用(...)运算符报错的解决方法

    vue.js 中使用(...)运算符报错的解决方法 Syntax Error:Unexpected token(XX:X) }, computed:{ ...mapGetters([ 'pageSiz ...

  2. 怎么将输出的字符串换行输出,replace

    var getAllData="我是第一行,我是第二行,我是第三行" var toBreak=getAllData.replace(/,/g, "\n") // ...

  3. OpenFOAM设置监测点(探针)

    首先准备好我们自己的平常算例文件,本次我们以圆柱绕流的算例来说明用法 然后我们在/opt/openfoam4/etc/caseDicts/postProcessing/probes文件夹下找到prob ...

  4. css中的浮动与定位

    传送门:https://www.cnblogs.com/junwuyao/p/7435257.html

  5. HTMLPage测试js通过ajax调用

    HTMLPage测试js通过ajax调用接口 <!DOCTYPE html> <html lang="en" xmlns="http://www.w3. ...

  6. C# ffmpeg 视频处理

    ffmpeg的官网:https://ffmpeg.org/ ffmpeg是一个强大的视频处理软件(控制台程序),可以通过C# 调用ffmpeg,并传入指令参数,即可实现视频的编辑. /// <s ...

  7. Java获取系统基础参数信息

    一.JVM已经帮我们读取了系统信息 public void testSystemParam(){ Properties p = System.getProperties(); Iterator it ...

  8. jenkins发布程序触发shell调用python脚本刷新akamai cdn api

    刷新cdn的流程:jenkins获取git中的代码,触发脚本推送到生产环境中(即cdn的源站) --> 触发脚本获取git工作目录的更新列表,将更新列表拼凑成带域名信息的url,写入到目录中 - ...

  9. python脚本使用源码安装不同版本的python

    # coding=utf-8 import os import sys # 判断是否是root用户 if os.getuid() == 0: pass else: print('当前用户不是root用 ...

  10. C++11智能指针之std::unique_ptr

    C++11智能指针之std::unique_ptr   uniqut_ptr是一种对资源具有排他性拥有权的智能指针,即一个对象资源只能同时被一个unique_ptr指向. 一.初始化方式 通过new云 ...