1

我有一个基本的 Maven 问题,但我似乎找不到能解决问题的答案。

基本上我想做一个条件陈述。类似于 java 等价物:

if(true) system.out.println("你好");

有哪些可能的方法来实现这一目标?

4

3 回答 3

2

Maven 是声明性的,而不是程序性的。唯一的“条件”构造是许多插件支持的“跳过”参数,并且可能由配置文件激活触发。

您的问题需要更加具体,才能提供更具体的答案。

于 2013-11-07T21:28:47.213 回答
2

您可以使用profiles来实现您想要的。使用他们的activation部分配置文件(以及因此其内容 - 即插件定义)仅在“如果”某种情况为真(即文件存在,或特定属性具有特定值等)时打开。

你将如何做到这一点取决于你的具体问题。

于 2013-11-08T10:30:37.600 回答
-1

您不是唯一需要简单条件执行的人。

bmargulies回答显示了在 Maven 世界中,您可能会如何得到“我们不了解需求 - 请更具体”的答案,而不是直接满足需求。

如果你从 maven 切换到gradle,你会在教程中使用 tasks找到一个简单的 if/else 构造。

gradle.taskGraph.whenReady {taskGraph ->
    if (taskGraph.hasTask(release)) {
        version = '1.0'
    } else {
        version = '1.0-SNAPSHOT'
    }
}
于 2018-09-09T06:02:24.840 回答