zoukankan      html  css  js  c++  java
  • Java maven入门

    原文:
    https://www.cnblogs.com/best/p/9676515.html
    https://blog.csdn.net/Seven71111/article/details/102496546
    https://blog.csdn.net/xqk709008281/article/details/79468930
    https://www.jianshu.com/p/cdb088f398c8


    一、下载和安装 jdk

    用迅雷下载一下jdk,安装时注意一下安装路径,因为之后需要配置环境变量 JAVA_HOME
    https://download.oracle.com/otn/java/jdk/8u221-b11/230deb18db3e4014bb8e3e8324f81b43/jdk-8u221-windows-x64.exe?AuthParam=1563589007_663a1f07ff53f2baa3925f340f025ad7


    二、下载 maven

    用迅雷下载一下maven,解压到某个盘就可以了,英文路径哦
    https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.zip


    三、配置 maven

    1、首先配置环境变量 JAVA_HOME

    window7进入配置环境变量的方式:开始菜单 -> 计算机(右键) -> 属性 -> 高级系统设置 -> 环境变量
    变量名:JAVA_HOME
    变量值:D:Program FilesJavajdk1.8.0_221

    2、接着配置环境变量 MAVEN_HOME

    变量名:MAVEN_HOME
    变量值:D:apache-maven-3.6.3

    3、修改系统环境变量 Path

    变量名:Path
    变量值:;%MAVEN_HOME%in;

    4、测试

    jdk测试:java -version
    Maven测试:mvn -version


    四、基本知识

    1、maven是什么?

    Maven是当前最受欢迎的Java项目管理构建自动化综合工具

    • Java 中的 Ant(以前)
    • node.js 中的 npm、
    • dotNet 中的 nuget、
    • PHP 中的 Composer。

    2、maven 依赖包的下载流程 和 配置

    依赖包的下载流程

    • 从本地资源库中查找并获得依赖包,如果没有,执行第2步。
    • 从Maven默认中央仓库中查找并获得依赖包(http://repo1.maven.org/maven2/),如果没有,执行第3步。
    • 如果在pom.xml中定义了自定义的远程仓库,那么也会在这里的仓库中进行查找并获得依赖包,如果都没有找到,那么Maven就会抛出异常。

    配置

    • 配置文件地址:D:apache-maven-3.6.3confsettings.xml
    • 配置的节点:mirrors
    <mirror>
    	<id>nexus-aliyun</id>  
    	<mirrorOf>*,!jeecg,!jeecg-snapshots</mirrorOf>  
    	<name>Nexus aliyun</name>  
    	<url>http://maven.aliyun.com/nexus/content/groups/public</url>  
    </mirror>
    

    3、Maven的一些配置参数

    https://www.jianshu.com/p/d079bd7d0623

    modelVersion是4.0.0,这是当前仅有的可以被Maven2&3同时支持的POM版本,它是必须的。

    maven的参数分为4块

    1. 基本设置 The Basics
    2. 构建过程的设置 Build Settings
    3. 项目信息设置 More Project Information
    4. 环境设置 Environment Settings
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        
        <!-- 基本设置 The Basics -->
        <groupId>...</groupId>
        <artifactId>...</artifactId>
        <version>...</version>
        <packaging>...</packaging>
        <dependencies>...</dependencies>
        <parent>...</parent>
        <dependencyManagement>...</dependencyManagement>
        <modules>...</modules>
        <properties>...</properties>
        
        <!-- 构建过程的设置 Build Settings -->
        <build>...</build>
        <reporting>...</reporting>
        
        <!-- 项目信息设置 More Project Information -->
        <name>...</name>
        <description>...</description>
        <url>...</url>
        <inceptionYear>...</inceptionYear>
        <licenses>...</licenses>
        <organization>...</organization>
        <developers>...</developers>
        <contributors>...</contributors>
        
        <!-- 环境设置 Environment Settings -->
        <issueManagement>...</issueManagement>
        <ciManagement>...</ciManagement>
        <mailingLists>...</mailingLists>
        <scm>...</scm>
        <prerequisites>...</prerequisites>
        <repositories>...</repositories>
        <pluginRepositories>...</pluginRepositories>
        <distributionManagement>...</distributionManagement>
        <profiles>...</profiles>
    </project>
    

    4、maven配置参数解释

    modelVersion:POM版本,常用4.0.0,因为可以被Maven2 & 3同时支持

    1、基本设置(The Basics)

    groupId:项目组织 的唯一的标识符,实际对应JAVA的包的结构,是main目录里java的目录结构。

    artifactId:项目 的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。

    packaging:

    1. pom,maven依赖文件。打出来可以作为其他项目的maven依赖,在工程A中添加工程B的pom,A就可以使用B中的类。用在父级工程或聚合工程中。用来做jar包的版本控制
    2. jar,java普通项目打包。通常是开发时要引用通用类,打成jar包便于存放管理。当你使用某些功能时,就需要这些jar包的支持,需要导入jar包
    3. war,java web项目打包。做好一个web网站后,打成war包部署到服务器。目的是节省资源,提供效率。

    dependencies:依赖列表

    dependencyManagement:依赖管理,这个标签主要是用来定义在父模块中,供子模块继承用

    build:常用于给构件的行为提供相应的支持,里面引用了一些插件

    parent:用于在子模块中对父模块的pom的继承

    modules:用来聚合多个模块,让多个模块进行编译,不用一个一个来


    5、开源项目 guns 的结构分析

    1. guns里面的pom.xml文件大体上有这三个,如图

    2. guns-vip-master -> pom.xml:相当于是顶层的,下面有两个模块guns-base-support,guns-vip-main

    3. 子模块guns-base-support
      注意:这里的打包方式是pom,只有这样才可以作为其他项目的maven依赖

    4. 子模块guns-vip-main

    111

  • 相关阅读:
    django form表单验证
    Django messages框架
    pymysql 操作数据库
    python数据类型详解及列表字典集合推导式详解
    深入flask中的request
    修改sqlarchemy源码使其支持jdbc连接mysql
    深入理解Python中协程的应用机制: 使用纯Python来实现一个操作系统吧!!
    svg坐标转换
    近几年总结
    frp中的json模块
  • 原文地址:https://www.cnblogs.com/guxingy/p/12786758.html
Copyright © 2011-2022 走看看