• Maven


    Maven

    项目管理工具

    • 构建项目(Builds)
    • 依赖管理(Dependencies)
    • 配置管理(SCMs)
    • 发布管理(Release)
    • 文档编制(Documentation)
    • 报告(Reporting)

    特点:

    • 微内核(只解析XML,其他由Maven插件处理)
    • 约定优于配置
    • 定义项目模型

    安装:

    brew install maven
    mvn -version
    

    创建Maven项目

    mvn archetype:generate -DgroupId=org.flyne.demo -DartifactId=maven-demo -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
    # 这是一个goal
    

    项目结构

    maven-demo
    |– pom.xml
    `– src
    |– main
    | `– java
    |    `– org
    |      `– flyne
    |        `– demo
    |          `– App.java
    `– test
    `– java
    `– org
    `– flyne
    `– demo
    `– AppTest.java
    

    POM文件,项目对象模型(Project Object Model)

    项目的核心配置文件

    <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>  
      <groupId>com.tiantian.mavenTest</groupId>  
      <artifactId>projectB</artifactId>  
      <version>1.0-SNAPSHOT</version>  
      <packaging>jar</packaging>  
       
      <dependencies>  
        <dependency>  
          <groupId>junit</groupId>  
          <artifactId>junit</artifactId>  
          <version>3.8.1</version>  
          <scope>test</scope>  
                  <optional>true</optional>  
        </dependency>  
      </dependencies>  
    </project>  
    

    构建项目

    mvn package
    # 这是一个phase
    mvn compile
    # 这也是一个phase,包含如下的阶段:
    # 1. validate
    # 2. generate-sources
    # 3. process-sources
    # 4. generate-resources
    # 5. process-resources
    # 6. compile
    

    Maven常用阶段(phase)

    • validate:验证项目是否正确,所有必须的信息是否可用
    • compile:编译项目的源码
    • test:使用单元测试框架对编译后的源代码逆行测试
    • package:接受编译好的代码,打包成可发布的格式,如jar
    • verify:运行任何检查,验证包是否有效且达到质量标准
    • install:将包安装到Maven本地仓库,供本地其他Maven项目使用
    • deploy:将最终的包复制到远程仓库,供其他开发人员和Maven项目使用
    • clean:清理上一次构建生成的文件
    • site:生成项目站点文档
    写在后面:

    1. 子曰:「学而不思则罔,思而不学则殆」。
    2. 站点地图
    2. 本作品作者为 Lshare,采用知识共享署名 4.0 国际许可协议进行许可。
  • 相关阅读:
    [LeetCode] 21. 合并两个有序链表
    [LeetCode] 5081. 步进数
    [LeetCode] 104. 二叉树的最大深度
    [LeetCode] 70. 爬楼梯
    Java开发手册1.5读书笔记
    [LeetCode] 509. 斐波那契数
    设计模式之UML类图以及类间关系
    [LeetCode] 50. Pow(x, n)
    [LeetCode] 206. 反转链表
    [LeetCode] 119. 杨辉三角 II
  • 原文地址:https://www.cnblogs.com/lshare/p/11334382.html
Copyright © 2020-2023  润新知