gpt4 book ai didi

java - Gradle Tooling API - 查找 GradleProject 的所有任务

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:59:01 26 4
gpt4 key购买 nike

我完全被困在这里了。我正在编写一个应该操纵 gradle 构建的 java 类。

我已经成功地实例化了 gradle 工具 API(连接器、GradleProject),但是这些都不能让我得到 BuildLauncher 可用的所有任务的简单列表(提示:一些任务可能在插件中)。然而,我已经设法运行“:tasks”任务,然后解析它的输出,但听起来很糟糕。

其中一个想法是以某种方式获得 org.gradle.api.Project 引用,但我也无法做到。

我是否遗漏了一些重要的东西,或者仅仅是工具 API 从来就没有提供对 gradle API 的访问权限?

最佳答案

看来下面的一段代码可以帮到你:

GradleConnector connector = GradleConnector.newConnector();
connector.forProjectDirectory(new File(".")); // project dir

ProjectConnection connection = connector.connect();
try {
// Load the model for the project
GradleProject project = connection.getModel(GradleProject.class);
System.out.println("Project: " + project.getName());
System.out.println("Tasks:");
for (Task task : project.getTasks()) {
System.out.println(" " + task.getName());
}
} finally {
// Clean up
connection.close();
}

基本上你需要获得模型。另请查看 $GRADLE_HOME/sample/toolingApi 下的示例。

关于java - Gradle Tooling API - 查找 GradleProject 的所有任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30903947/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com