问题标签 [maven-enforcer-plugin]

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 回答
260 浏览

java - Maven Enforcer - 是否可以有一个带有数组属性的自定义规则?

我在配置我的一个执行器自定义规则时遇到了问题。

我的 POM 文件中的插件配置如下所示:

对规则的依赖已在父 POM 中声明。

我想要的是能够将路径列表/数组指定为“uTF8Rule”的属性,而不仅仅是一个简单的变量。(我希望 POM 负责我的规则适用的路径,而不是配置规则来搜索我的 basedir 中的各种路径

我无法找到有关规则属性类型的参考/文档。

所需的输出将类似于:

欢迎任何想法。

提前致谢!

0 投票
1 回答
858 浏览

maven - 如何禁止版本包含某个部分的 Maven 依赖项?

我正在尝试使用Maven Enforcer 的禁止依赖项compile,我想禁止runtime任何包含-redhat-. 其背景:JEE API 和其他东西已经存在于 JBoss AS 中,不应该包含在 EAR 中。

这是我正在尝试的,但它不起作用:

0 投票
1 回答
6165 浏览

java - Maven 执行器插件和缺少的依赖项

这是一个最小的项目:

运行时:

验证正常。

运行时:

validate或从到 的任何阶段process-resources

我得到预期的失败消息:

但是当我运行任何其他(以后)阶段compile时,deploy例如:

我收到有关缺少依赖项的错误,但没有由强制插件引起的失败:

在我看来,enforcer 插件根本没有执行,或者在运行compile和后续阶段可以构建项目之前首先检查依赖项。

但是为什么在运行时不检查依赖项process-resources

0 投票
2 回答
366 浏览

maven - 如何在缺少标志的情况下使 Maven 构建失败

如果标志“-N”(--non-recursive)不存在,有没有办法失败?我正在尝试完成这样的事情:

此强制执行策略位于配置文件中。如果有办法在配置文件中激活 --non-recursive 标志,那就没问题了。

0 投票
1 回答
1838 浏览

java - Maven 忽略“maven-compiler-plugin”要求

我正在使用 Maven 3.0.5。我对“maven-compile-plugin”有疑问。基本上,我有 2 个项目,旧的在 Java 6 中,新的在 Java 7 下。我目前的 JAVA_HOME 很好,是:

$ echo $JAVA_HOME C:\Program Files (x86)\Java\jdk1.6.0_38

在新项目中,我将 maven-compile-plugin 与此配置一起使用:

我在 settings.xml 中声明了 JDK7 变量:

在新项目中,我还使用强制插件来检查编译的源代码是否符合 Java 7,所以在我的 POM 中,我有:

我对 Maven 的不理解是它总是使用 JAVA_HOME 定义的编译器。由于它默认为 Java 6,所以当我构建新项目时,强制插件总是失败,因为 Maven 使用 java 6:

你能帮我解决这个问题吗?

0 投票
0 回答
417 浏览

java - 自定义 Maven 强制规则:如何获取 Maven 工件的属性?

我正在尝试为 Maven 执行器插件编写一个自定义规则,该RequireSameVersions规则与执行器插件中包含的规则非常相似。

我想查看项目的所有依赖项,如果它们有自定义属性集,那么我们必须确保所有依赖项的属性相同(同时忽略没有该属性集的任何依赖项,因为这些与版本无关)。

我面临的问题是,在RequireSameVersions规则的代码中,工件具有在 API 中公开的版本,因此您可以调用artifact.getVersion()每个相关工件,但是您似乎可以调用的唯一对象getProperties()是 maven 项目本身.

因此,我真正想为自定义规则编写的代码是:

但是,我不知道在getProperties(artifact)方法中添加什么。这里的任何建议都会很棒,谢谢。

0 投票
4 回答
5299 浏览

maven - Run Maven Enforcer Plugin rule on command line

I would like to enforce the requireReleaseDeps rule of the Maven Enforcer Plugin on a Maven project without any POM configuration simply as a command line call.

According to the docs I should be able to just pass in the rules parameter like so

or maybe this should work

However both of these calls result in

Anybody know if this usage scenario actually works somehow or do I have to dive into debugging the plugin at this stage to figure this out?

0 投票
2 回答
295 浏览

maven - 如果 svn 过期,Maven 停止构建

在阅读了很多 SO 问题以及其他网站之后,我仍然无法准确解决这个问题。

我们的构建周期很长(10-20 分钟),因为有很多依赖项。有时会发生,您开始构建所有内容都是最新的,但是在完成时,有人将新的更改推送到远程 svn。

如果 svn 基本上仍然是最新的,我希望 Maven 在所有相关项目上检查validate和阶段。verify

我试过使用Enforcer插件和Build number插件,但没有成功。执行者似乎可以解决问题,但我还没有弄清楚要设置哪些规则。另一方面,内部版本号插件检查是否没有本地修改,但我认为它不会检查远程更改。

我不认为 POM 与问题非常相关,但如果有人需要它,或者某些部分,请告诉我,我会更新它。

0 投票
1 回答
1650 浏览

maven - maven 执行器插件标记传递依赖项中的依赖收敛错误

场景:我的项目启用了 maven-enforcer-plugin dependencyConvergence 规则。它依赖于一个通过使用 dependencyManagement 声明纠正了自己的依赖收敛的库,但它似乎不会影响下游依赖版本的解析。

我正在谈论的错误消息类型的示例(请注意,两个版本都是作为模块d下的传递依赖项继承的c):

mvn dependency:tree显示出类似的不一致。c管理传递版本:

d将其显示为冲突:

这似乎是一个潜在的无穷无尽的问题。如果我使用 中的dependencyManagement 更正它d,那么我只是将问题推到下游的任何消费者身上dc我可以通过在项目的 pom中排除传递依赖来避免错误,但这就是为什么我在c!

我认为这是 Maven 中的错误,或者可能是强制插件中的错误。我错过了什么吗?处理这种情况的正确方法是什么?

这是http://jira.codehaus.org/browse/MNG-3038的案例(自 2007 年开放!)?就我而言,依赖项在整个过程中随处可见。

0 投票
2 回答
2260 浏览

maven - Maven配置文件不存在时如何失败?

我的 pom.xml 中有一些 Maven 配置文件。我已将 jenkins 配置为对这些配置文件中的每一个运行夜间测试。

我今天发现我的詹金斯配置中的一个配置文件名称存在拼写错误。事实证明,如果 maven 无法归档配置文件,它会运行默认配置文件。

如果配置文件不存在,有没有办法强制 maven 抛出错误?