加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 重构代码

发布时间:2020-12-15 04:31:47 所属栏目:Java 来源:网络整理
导读:我正在学习gradle工具API. 我需要写两种方法.一个将调用build.gradle文件中定义的所有任务(定义了10个以上的任务)和另一个我可以指定任务名称的任务.(如清理,构建等) 我有两种方法,只有一行代码不同. 我需要你的建议,我们如何重构这些方法,避免代码重复. 第
我正在学习gradle工具API.
我需要写两种方法.一个将调用build.gradle文件中定义的所有任务(定义了10个以上的任务)和另一个我可以指定任务名称的任务.(如清理,构建等)

我有两种方法,只有一行代码不同.
我需要你的建议,我们如何重构这些方法,避免代码重复.

第一种方法.将执行build.gradle中的所有任务

public boolean buildProject() {
        ProjectConnection connection = connector.connect();
        BuildLauncher build = connection.newBuild();
        try {
            build.run();// by default it executes all tasks
        }finally {
            connection.close();
        }
        return true;
    }

第二种方法只执行指定的任务

public boolean buildSpecificTask(String ...tasks ) {
    ProjectConnection connection = connector.connect();
    BuildLauncher build = connection.newBuild();
    build.forTasks(tasks);

    try {
        build.run();
    }finally {
        connection.close();
    }
    return true;
}

build.forTasks(tasks)只有一行差异;

解决方法

public boolean build(String ...tasks) {
    ProjectConnection connection = connector.connect();
    BuildLauncher build = connection.newBuild();
    if (tasks.length > 0) {
        build.forTasks(tasks);
    }

    try {
        build.run();
    }finally {
        connection.close();
    }
    return true;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读