问题标签 [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 投票
0 回答
149 浏览

maven - 如何强制设置指向 systemPath 基目录的属性?

我正在尝试强制使用 maven 强制执行器插件设置属性。该属性应指向一个目录,并用作某些系统范围依赖项的基本目录。我有以下内容pom.xml

现在,当我在non.existent.property未设置属性的情况下运行项目时,我得到以下输出:

在调用执行器插件之前出现报告的错误。我相信这是因为强制目标的文档指出:

需要在范围内收集工件的依赖项:测试。

如何强制在收集依赖项之前设置属性?

0 投票
0 回答
4368 浏览

java - 无法执行 org.apache.maven.plugins:maven-enforcer-plugin:1.4.1:enforce: org/codehaus/plexus/util/StringUtils

执行目标 org.apache.maven.plugins:maven-enforcer-plugin:1.4.1:enforce 的强制版本失败:执行 org.apache.maven.plugins:maven-enforcer-plugin:1.4 时缺少所需的类。 1:执行:org/codehaus/plexus/util/StringUtils 使用 jhipster 4.3.0

运行 mvn clean install 时出现以下错误:

0 投票
1 回答
387 浏览

java - 表示不能有以字符串“master-”开头的项目版本或依赖项版本的自定义规则

我正在按照writing-a-custom-rule创建自定义规则。

目的是使用maven-enforcer-plugin来完成以下目标:

“编写一个自定义规则,说明不能有以字符串 'master-' 开头的项目版本或依赖项版本”。

所以我有以下java类-

但是该类仅检查项目版本。我也想获得依赖版本。如何获取所有版本以检查它们是否从“master-”开始?

0 投票
0 回答
85 浏览

java - 在外部项目中执行自定义规则

我在该项目中有一个 Parent maven 项目和 4 个模块:

在此处输入图像描述

现在我想放一些自定义规则,说不能有以字符串“master-”开头的项目版本或依赖版本。此规则将适用于所有依赖 eBill Software 的外部项目。

因此,我创建了一个名为 customRule 的新模块,其父模块又是 eBill Software。我遵循了编写自定义规则,并且我的规则类在新模块中。

模块customRule中CustomRule.java的相关部分:

customRule 模块 pom.xml 的相关部分:

现在我想在父模块 eBill Software 中访问这个自定义规则:

那么我应该在其 pom.xml 和外部项目的 pom.xml 中输入什么才能获得适用于依赖于 eBill Software 的所有外部项目的自定义规则。

0 投票
0 回答
58 浏览

java - maven 自定义规则失败或通过而不考虑自定义规则

我正在关注编写自定义规则文档来创建自定义规则并应用它。

我的执行器插件执行在 pom.xml 文件中有以下条目-

问题是,如果我坚持下去<shouldIfail>true</shouldIfail>,我总是会失败,如果我坚持下去<shouldIfail>false</shouldIfail>,我总是会成功。

所以我不知道如何将java类变量的值shouldIfail放在标签中,以便它根据逻辑动态传递或失败。

0 投票
1 回答
6038 浏览

maven - 使用 YAML 配置 Maven - maven-enforcer-plugin 是特定的 - 不起作用

我的 Maven POM 是 YAML(感谢io.takari.polyglot),我很难在 YAML 中编写配置,因为该示例具有值,但我相信我应该将maven-enforcer-plugin' 的banTransitiveDependencies规则配置为采用 noincludesexcludes

到目前为止,这是我的尝试:

但插件抱怨:

[错误] 无法在项目 my-app 上执行目标 org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M1:enforce (enforce-ban-transitive-deps):无法解析 mojo org 的配置.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M1:enforce 用于参数规则:无法创建接口 org.apache.maven.enforcer.rule.api.EnforcerRule 的实例:org.apache.maven.enforcer .rule.api.EnforcerRule.() -> [帮助 1]

这是文档:https ://maven.apache.org/enforcer/enforcer-rules/banTransitiveDependencies.html

并且按照该示例将包含和排除一些我现在不想做的东西 - 因为我想设置它来玩,一旦我弄清楚了配置!

我也尝试通过https://www.site24x7.com/tools/xml-to-yaml.html将他们的 XML 放入,但它仍然给出相同的错误。

如果您想尝试,pom.yml然后创建一个名为的目录和文件.mvn/extensions.xml并将其放在项目的根目录中(在 旁边pom.xml),然后开始:

0 投票
1 回答
398 浏览

maven - “禁止传递依赖”会导致构建失败,即使它以前显然有效

我正在尝试从源代码构建WildFly 10.1.0.Final

构建导致违反“禁止传递依赖”规则:

这会导致构建失败:

我确信它一定在某个时候起作用了——WildFly 是一个非常活跃的开源项目,无法想象如果它甚至无法构建一个版本会达到最终版本。

我可能遗漏了一些东西(因为我以前从未使用过 Ban Transitive Dependencies),但我无法理解从那时到现在发生了什么变化。

首先,正如预期的那样,wildfly-feature-pack确实取决于cxf-rt-features-clustering. 此外,我们可以注意到它有一个wildfly-parent. 最后,在这个项目本身中指定了“ban-transitive-deps”规则。这些东西都可以在它的 POM 中看到

的版本在父 POM 中固定为cxf-rt-features-clustering在与“3.1.6”相同的 POM中定义的值。${version.org.apache.cxf}

查看该工件的 POM,它甚至不依赖于xalan:xalan. 但是,它确实取决于大量其他事情。这些不会导致“禁止传递依赖”规则失败吗?为什么 Maven 执行器插件“认为”它确实依赖xalan:xalan

此外,为什么执行器输出甚至显示xalan:xalan依赖于另一个工件?当然,违反wildfly-feature-pack依赖cxf-rt-features-clusteringcxf-rt-features-clustering依赖的规则就足够了xalan?这不就意味着它wildfly-feature-pack具有传递依赖吗?

我想我可能误解了整个“禁止传递依赖”规则本身。官方文档并不是很有帮助,它只是说这个“规则禁止所有传递依赖”,这很明显。

0 投票
1 回答
484 浏览

maven - 如何使用 Maven 解决依赖错误

我正在尝试解决我的 Maven 项目中的库之间的冲突。我将以下插件添加到插件部分:

当我运行时mvn enforcer:enforce,我得到不同的依赖错误,比如这个:

那么,在打包 JAR 时如何解决这些错误呢?在 SBT 中它更容易,但我被 Maven 卡住了。

0 投票
1 回答
2563 浏览

maven - 如何配置 maven-enforcer-plugin 以排除测试范围内的某些规则?

如何配置 maven-enforcer-plugin 以排除测试范围内的某些规则?

我有这样的配置:

但我只想检查常规代码的 JDK 版本,而不是测试范围。

0 投票
1 回答
142 浏览

java - 未能获得 100% 的覆盖率

我正在使用 spring 并使用 mvn site 检查我的测试覆盖率和应用程序依赖收敛,我收到 [错误] 错误你没有 100% 收敛。

我说问题出在模块 rest-producer 中的 slf4g 版本上,但我在这个模块中看不到我的版本有任何问题,如下所示。

休息生产者

我能得到一些建议吗?这个项目有大约 9 个模块

我正在使用的 is jsonPath 有一个依赖项

我也在使用的推土机有

版本不同我认为这是问题,但我能做些什么来排除其中一个或更改它们的依赖版本