问题标签 [maven-lifecycle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1573 浏览

java - Maven生命周期理解

我有一个 JavaEE,maven 应用程序。在这个应用程序中,我使用从 XSD 生成的类,以及通过 Mapstruct 生成的映射器。

在我的 EJB 模块中,maven 构建应该执行以下操作:

  1. 通过jaxb2-maven-plugin从 XSD 生成 java 类
  2. 通过build-helper-maven-plugin将这些生成的类添加到源文件夹 ,因为:
  3. maven-processor-plugin通过generate-mapstruct-mappers生成Mapstruct映射器实现,它使用这些 XSD 生成的类
  4. 最后将这些映射器实现也添加到源文件夹

不幸的是,它对我不起作用。这是 ejb 的 pom.xml 的插件部分:

这会从 JAXB 生成类,并将其放入 JAR 文件的源代码中。但是生成的 Mapper 实现不在源代码中。

在 Eclipse 中,我可以将生成的类设置为构建路径的一部分,但生成的 JAR 不包含映射器实现。

如果我更改插件的阶段,maven-processor-plugin 将抛出一个找不到 simbol错误,并且该符号是从 jaxb 生成的类。

谢谢你帮助我。

0 投票
0 回答
115 浏览

java - Maven生命周期错误的顺序

package我在此阶段部署我的应用程序:

integration-test并在阶段运行一些集成测试

但是,当我查看控制台时,JMeter 测试在redeploy. 这怎么可能?我错过了什么?

0 投票
0 回答
147 浏览

maven - Travis CI Maven 构建中的清洁生命周期

当我查看.travis.yml配置时,我经常会看到mvn clean verifymvn clean install.

clean在 Travis CI 构建中第一次调用mvn脚本时调用生命周期有什么意义吗?clean在刚刚开始的新 Travis 构建中是否有必要?

我理解为什么clean在状态可能不干净时需要在本地环境中,所以在 Maven 中,为什么要运行'mvn clean'?不回答我的问题。

0 投票
4 回答
6192 浏览

maven - 向 Maven 生命周期添加阶段?

我尝试在 Maven 生命周期中添加一些额外的阶段。主要是增加一些额外的测试级别:

以上包含新的应用程序测试和系统测试阶段(包括前期和后期)。

我已经在以下位置启动了一个测试插件:codezoo-lifecycle-maven-plugin 我用于测试的 pom 位于src/it文件夹中。

似乎新阶段或有所回升,但发生了一些奇怪的事情:

这行得通。我为测试添加的回声插件也被执行。但是有一些警告(使用 maven 3.3.9)。

执行默认生命周期跳过新阶段。

如果我将生命周期的“测试级别”的 ID 更改为“默认”,则阶段会执行两次。

发出的警告是:

发出此警告的源代码表明生命周期未正确命名空间。但我无法弄清楚这是如何做到的。

我在网上找到了一些提示:create-a-new-phase (Stackoverflow) 或其他插件,如maven-scm-publish-plugindocker-maven-plugin。但是那些要么创建一个完整的新生命周期,要么只是从默认的 Maven 生命周期更改插件映射。

网络上有关此主题的所有其他内容似乎至少有 4 年历史了……

所以:

  • 如何向 Maven 默认生命周期添加其他阶段(如果我必须重复默认插件映射:我可以忍受)
  • 如何命名新的生命周期?似乎我创建了自己的包装(在配置中被称为角色提示)。但是 Maven 仍然有一些回退到默认生命周期。
  • 可以不重复使用默认的 Maven 阶段吗?

测试插件的当前状态在 github 上

谢谢!

0 投票
1 回答
218 浏览

java - JAR 打包 Maven 生命周期在哪里定义?

我正在根据 JAR 打包的生命周期创建自定义 Maven 打包。我想知道这个生命周期是在哪里定义的(即components.xml源代码位置)。

0 投票
1 回答
44 浏览

maven - Maven中自定义生命周期中的阶段名称冲突?

AFAIK,您可以在 Maven 中创建自定义构建生命周期。

此外,AFAIK,您不能告诉 maven 执行生命周期。您可以:

  1. 告诉 maven 执行一个阶段:在这种情况下,maven 会找到这个阶段在哪个生命周期中,然后执行该生命周期中的所有阶段,直到指定的阶段。

  2. 告诉 maven 执行一个目标,将其指定为mvn plugin_name:goal_name

所以,假设我已经创建了一个自定义生命周期。并假设这个自定义生命周期有一个名为install.

当我编写mvn install时,maven 会执行默认生命周期(其中有一个名为 的阶段install)还是我的自定义生命周期(也有一个名为 的阶段install)?

maven 将如何确定要遵循的生命周期?

0 投票
1 回答
1193 浏览

dependencies - 是否可以从 p2 repo 解决 maven 插件中的依赖关系

我正在开发一个 Maven 插件,它将用于覆盖默认的 Maven 生命周期,并将使用我的代码。我有多个 jar 依赖项(eclipse 和我的另一个应用程序插件)。我有这些罐子的 p2 回购。如何整合这两者来解决所有依赖关系?Tycho 不能使用,因为它只能用于 RCP 应用程序(我的理解/误解)。

与此类似 -问题

还有其他解决方法吗?

0 投票
1 回答
194 浏览

java - 自定义生命周期中断 Surefire:Maven 中的测试

我有一个插件,它可以在构建过程中创建一个特殊的 zip 文件。
为此,它定义了一个自定义包装类型“wcc”和一个自定义生命周期。
当我运行mvn package应用程序时,我的 zip 文件构建得很好,一切正常。
注意:它正在跳过单元测试来执行此操作。)

但是,当我运行mvn test它失败。

并吐出以下日志:

如果我更改<packaging>jarfromwcc然后我的测试运行并通过就好了。

那么为什么我会收到这个错误,更重要的是我该如何解决呢?


进一步的调查

Maven surefire 插件仅支持java.lang.String属性。我的插件有一对java.io.File属性。

我的插件使用这些属性来打包 zip 文件,以及适当地打包文件并确保它以预期的格式构建。

我怎样才能确保忽略这些配置属性?我是否需要制作它们 String并将转换添加到File以这种方式使用的插件中?

0 投票
0 回答
35 浏览

java - Maven Ant 在构建结束时运行一些东西

我有一个 Maven 父项目,它有 6 个模块,每个模块都会生成一个特定的工件,该工件被复制到某个地方,当所有模块都构建好后,我希望能够运行一个 ant 任务,将这些工件提交并推送到它的 GIT 存储库中。知道如何在 Maven 中实现这一点吗?目前我从 Ant 运行 Maven,然后运行 ​​GIT Commit/Push 任务。

谢谢!

约翰

0 投票
2 回答
2869 浏览

maven-lifecycle - 未知的生命周期阶段“运行”。您必须指定一个有效的生命周期阶段

[错误] 未知的生命周期阶段“运行”。您必须在格式中指定有效的生命周期阶段或目标