代码之家  ›  专栏  ›  技术社区  ›  Noel M

列出Maven 2中所有可能的目标?

  •  99
  • Noel M  · 技术社区  · 14 年前

    我是马文的新手,来自蚂蚁世界。

    有没有可能列出所有你可以运行的目标(包括,比如,所有的插件)?

    我可以看到以前 -g

    5 回复  |  直到 8 年前
        1
  •  117
  •   Ry-    11 年前

    您在命令行中指示的目标链接到 lifecycle 关于马文。例如 build clean site 不同的生命周期)由以下阶段组成:

    • validate :验证项目是否正确以及是否提供了所有必要的信息。
    • compile
    • test :使用适当的单元测试框架测试编译的源代码。这些测试不应要求打包或部署代码。
    • package :获取编译后的代码并将其打包为可分发格式,如JAR。
    • integration-test :必要时处理包并将其部署到可以运行集成测试的环境中。
    • verify :运行任何检查以验证包是否有效并符合质量标准
    • install :将包安装到本地存储库中,以在本地其他项目中用作依赖项。
    • deploy :在集成或发布环境中完成,将最终包复制到远程存储库以与其他开发人员和项目共享。

    你可以找到“核心”插件的列表 here ,但是还有很多其他插件,比如codehaus, here .

        2
  •  50
  •   Pascal Thivent    14 年前

    是否可以列出所有可能运行的目标(包括,比方说,所有插件)?

    Maven没有任何内置的功能,尽管 phases 是有限的 插件目标 不是因为插件列表没有)。

    但你可以让事情变得更容易利用 bash completion (在Windows下使用cygwin)如 Guide to Maven 2.x auto completion using BASH

    为了让事情顺利进行,首先 this guide 在计算机上设置bash完成。然后,是时候为Maven2编写一个脚本了,并且:

    以下是我得到的结果:

    $ mvn [tab][tab]
    Display all 377 possibilities? (y or n)
    ant:ant 
    ant:clean 
    ant:help 
    antrun:help 
    antrun:run 
    archetype:crawl 
    archetype:create 
    archetype:create-from-project 
    archetype:generate 
    archetype:help 
    assembly:assembly 
    assembly:directory 
    assembly:directory-single 
    assembly:help 
    assembly:single  
    ... 
    

    当然,我从来没有浏览过377种可能性,我使用完成。但这给了你一个关于“a”列表大小的概念:)

    资源

        3
  •  7
  •   Denys Kniazhev-Support Ukraine    8 年前

    Maven Projects 标签页:

    Maven Projects

        4
  •  0
  •   mario    7 年前

    让我们把它变得非常简单:

    Maven生命周期: 2。默认(生成) 三。场地

    默认生命周期的Maven阶段: 一。验证 2。编译 三。测试 5个。核实 6。安装 7号。部署

    注:

    参见Maven构建生命周期基础 1

        5
  •  0
  •   Aguid    7 年前

    每个构建生命周期都由不同的构建阶段列表定义,其中一个构建阶段表示生命周期中的一个阶段。

    • validate-验证项目是否正确以及所有必要的信息是否可用
    • 编译-编译项目的源代码
    • 测试框架。这些测试不需要 打包或部署
    • 以其可分发的格式,如JAR。验证-运行任何检查 综合测试结果以确保符合质量标准
    • 安装-将包安装到本地存储库中,用作 本地其他项目中的依赖项
    • 在构建环境中完成部署,将最终包复制到

    这些生命周期阶段(加上此处未显示的其他生命周期阶段)按顺序执行,以完成默认生命周期。考虑到上述生命周期阶段,这意味着当使用默认生命周期时,Maven将首先验证项目,然后尝试编译源代码,对测试运行源代码,打包二进制文件(例如jar),对该包运行集成测试,验证集成测试,将已验证的包安装到本地存储库,然后将已安装的包部署到远程存储库。

    https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html