当前位置: 首页 > 知识库问答 >
问题:

如何在所有项目中找到特定类型的任务?

邴墨竹
2023-03-14

我有一个多构建Java项目正在用Gradle构建。

为了隐藏非法反射访问警告,我想在几个项目中找到JavaExec和Test任务,并提供所需的JVM参数。而不是将这些添加到每个项目中,我想将其应用于根中的所有项目build.gradle.

如何在所有项目中找到特定类型的特定任务?

我最初尝试使用withType,但是我想消除重复JavaExec和Test任务类型。见下文:

尝试#1

allprojects {
  repositories {
    jcenter()
  }

  afterEvaluate {
    project.tasks.withType(JavaExec) {
       it.jvmArgs "--add-opens=java.base/java.lang=ALL-UNNAMED"
    }

    project.tasks.withType(Test) {
        it.jvmArgs "--add-opens=java.base/java.lang=ALL-UNNAMED"
    }
  }
}

subprojects {
  version = "0.0.1-SNAPSHOT"
}

共有1个答案

杜元明
2023-03-14

试试这个:

afterEvaluate {
    [JavaExec, Test].each {
        project.tasks.withType(it) {
            it.jvmArgs "--add-opens=java.base/java.lang=ALL-UNNAMED"
        }
    }
}
 类似资料:
  • 问题内容: 如何去尝试找到Java中给定类的所有子类(或给定接口的所有实现者)?到目前为止,我有一种方法可以执行此操作,但是我发现它效率很低(至少可以这样说)。方法是: 获取类路径上存在的所有类名称的列表 加载每个类并测试以查看它是否是所需类或接口的子类或实现者 在Eclipse中,有一个很好的功能,称为类型层次结构(Type Hierarchy),可以很有效地显示它。如何进行编程? 问题答案:

  • 问题内容: 我想在整个数据库中查找2-3个不同的列名称,并列出所有包含这些列的表。任何简单的脚本? 问题答案: 要获取所有具有列或数据库中的表:

  • 我很久以前就问过这个问题.... 有没有办法在Gradle中列出任务依赖关系?

  • 在此处输入图像描述 我从字面上得到这个错误是我打开的所有项目,有谁能帮我修复这个?

  • 问题内容: 如果我有一个水果列表,其中包含各种实现,如,等。该列表是必需的,因为其他方法会对列表中的所有水果执行常规操作。 如何将特定类型的所有对象从列表中删除?例如所有的苹果?进行instanceof / if-else检查非常难看,尤其是在有许多不同的类时。 如何改善以下内容? 问题答案: 您应该知道-实例是不好的代码实践。 编写.getType()(返回的对象的枚举类型)怎么办?

  • 这是我的OWL文件的一部分: 如何仅从属性中获取