Maven 有没有办法确保属性已设置

2023-12-25

我刚刚找到了一个由错误的属性值引起的困难 Maven 问题。

该属性是测试运行时使用的备用 JVM 的路径。 我想通过检测路径是否有效来使 Maven 尽早失败。 实现这一目标的方法可能是什么?

我打算深入研究antrun,看看是否有办法让它先运行,以便它可以检查,但这似乎有点矫枉过正。

Question: 我怎样才能干净简单地做到这一点?


您可以使用强制执行者 Maven 插件 https://maven.apache.org/enforcer/index.html和它的需要财产 https://maven.apache.org/enforcer/enforcer-rules/requireProperty.html规则,您可以在其中强制某个属性的存在,可选地使用某个值(匹配的正则表达式),否则构建失败。

此规则可以强制设置已声明的属性,并可以选择根据正则表达式对其进行评估。

一个简单的片段是:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-enforcer-plugin</artifactId>
    <version>1.4.1</version>
    <executions>
        <execution>
            <id>enforce-property</id>
            <goals>
                <goal>enforce</goal>
            </goals>
            <configuration>
                <rules>
                    <requireProperty>
                        <property>basedir</property>
                        <message>You must set a basedir property!</message>
                        <regex>.*\d.*</regex>
                        <regexMessage>The basedir property must contain at least one digit.</regexMessage>
                    </requireProperty>
                </rules>
                <fail>true</fail>
            </configuration>
        </execution>
    </executions>
</plugin>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Maven 有没有办法确保属性已设置 的相关文章

随机推荐

  • 等待任务.Delay(foo);需要几秒而不是毫秒

    使用可变延迟Task Delay当与类似 IO 的操作结合时 随机花费几秒而不是几毫秒 重现代码 using System using System Collections Generic using System Diagnostics
  • React-js 忽略标签的 'for' 属性

    我知道对于 class 我们必须使用 className 但是我如何做出反应以保留 for 属性 下列
  • 在循环中定义匿名函数(包括循环变量)?

    我知道这段代码不起作用 我也知道为什么 但是 我不知道如何解决它 JavaScript var function id return document getElementById id document addEventListener
  • 如何从我的网站邀请 Facebook 的朋友 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • SQL Server 2008 R2(.Net 2.0 应用程序)中的死锁问题

    所讨论的 Sql Server 2008 R2 实例是一个重负载 OLTP 生产服务器 几天前出现了僵局问题 但仍未解决 我们收到了 Xml 死锁报告 其中列出了死锁涉及的存储过程以及其他一些详细信息 我将首先尝试列出此 xml 中的事实
  • iOS 开发者版本与发行版版本

    一段时间以来 我一直有这样的印象 对于 iOS 使用开发人员配置文件签署构建允许应用程序通过 XCode 构建在授权设备 在开发配置文件中列出 上运行 并进行调试 而使用分发配置文件签名允许应用程序在其他 iOS 设备上运行 但不能调试 这
  • 在 PhoneGap 1.2.0 中使用 Google Analytics 时 Android 和 iOS 之间的差异

    我一直在尝试让 Google Analytics 在 Android 和 iOS 上的 PhoneGap 1 2 0 中工作 在 PhoneGap 1 2 0 中使用 Google Analytics 时 Android 和 iOS 之间的
  • 使用 jquery ajax 在同一 POST 请求中上传文件和 JSON 数据?

    我正在尝试使用 jQuery Ajax 发送 POST 请求 我想在其中上传文件和一些 json 数据 请查找代码 var logoImg input name logoImg get 0 files 0 var formData new
  • Jinja2 中的独特列表过滤器

    我有以下 YAML 结构 bri cards slot 1 subslot 0 ports 2 slot 1 subslot 1 ports 2 slot 1 subslot 2 ports 2 slot 2 subslot 0 ports
  • 以编程方式关闭 netty

    我正在使用 netty 4 0 24 Final 我需要以编程方式启动 停止 netty 服务器 启动服务器时 线程被阻塞在 f channel closeFuture sync 请帮助提供一些如何正确执行的提示 下面是 Main 类调用的
  • 当 datagrid-cell 获得焦点时自动编辑 WPF datagrid 内容

    我在 WPF 中有一个数据网格数据网格文本列 and a 数据网格模板列
  • 直接在程序中打开图像

    我按照教程在 C windows 中制作了一个基本的图片查看器程序 该程序工作正常 但我想像默认的 Windows 照片查看器一样打开它 我尝试直接使用该程序打开图像 但打开程序后图像框是空的 当图像在程序内部浏览打开时 图像框工作正常 但
  • 如何查看 mongodb 正在执行的查询?

    我一直在我的 log development log 中看到这个 我想知道这个查询是否真的在我的数据库中执行 MONGODB 0ms socialcrunch development tags find id gt secrets limi
  • 测试redis密钥过期

    我想知道是否有人有一种聪明的方法来测试 redis 密钥过期后的行为 我本质上是为我的应用程序构建一个小型的 Redis 支持的缓存 并想测试 Redis 密钥设置过期后会发生什么 我使用 rspec 作为我的测试框架 我尝试在测试期间使用
  • 安卓过渡

    我使用以下代码为我的 SplashScreen 设置两个图像之间的动画 public void onCreate Bundle savedInstanceState super onCreate savedInstanceState set
  • 将 iPhone CoreData 文件从一个项目复制到另一个项目

    我正在尝试创建 2 个应用程序 一个构建持久存储 另一个使用它 到目前为止 我已经构建了一个应用程序 它使用 CoreData 从 XML 文件成功构建数据库 所以这个项目包含数据模型 实体的 h m 文件等 我现在尝试通过将数据模型文件
  • 如何计算双打的平均值,以使总误差最小?

    假设我们有一长串双打 比如说 N 1000000 array
  • OpenGL-ES 2.0 VS OpenGL-ES 1.1,哪个更快?

    我已经使用 OpenGL ES 1 1 编写了一个应用程序 但我想知道切换到 2 0 是否可以提高速度 有人用大多边形模型做过测试吗 我只想渲染具有不同颜色的三角形 没什么花哨的 然而 我想要渲染大约 100 万个三角形用于我的比较测试 O
  • 使用 ViewModel 在 MVC3 C# 中创建一个下拉列表,并在 POST 返回时轻松绑定模型。

    我有这个问题 我想为一周中的每一天制作 7 个下拉菜单 在每个下拉列表中 我希望添加相同的数据 我的视图模型 public class WeekDienstCreateViewModel public WeekDienst weekDien
  • Maven 有没有办法确保属性已设置

    我刚刚找到了一个由错误的属性值引起的困难 Maven 问题 该属性是测试运行时使用的备用 JVM 的路径 我想通过检测路径是否有效来使 Maven 尽早失败 实现这一目标的方法可能是什么 我打算深入研究antrun 看看是否有办法让它先运行