繁体   English   中英

如何在Windows OS中使用Java程序执行Windows命令

[英]How to execute windows commands with java program in windows OS

我想在大量项目中建立基础,以导入Eclipse。 我知道,我们可以将要构建的项目包含在settings.gradle文件下。 但是在我的工作区域中有一个限制。

因此,我的想法是,不要去每个项目都进行gradle构建。 我想用Java程序来自动化它。

我尝试使用以下Java程序执行基本的Windows命令执行:

import java.io.BufferedReader;
import java.io.InputStreamReader;      
public class Windows {    

    public static void main(String[] args) {

        Windows obj = new Windows();    

        String output = obj.executeCommand("ipconfig");

        System.out.println(output);

    }

    private String executeCommand(String command) {

        StringBuffer output = new StringBuffer();

        Process p;
        try {
            p = Runtime.getRuntime().exec(command);
            p.waitFor();
            BufferedReader reader =
                            new BufferedReader(new InputStreamReader(p.getInputStream()));

            String line = "";
            while ((line = reader.readLine())!= null) {
                output.append(line + "\n");
            }

        } catch (Exception e) {
            e.printStackTrace();
        }

        return output.toString();    
    }
}

因此,在上述程序中,如果我以gradle build给出命令,则该命令无法正常工作,请您帮忙。

由于您已经在使用Gradle,为什么不用gradle解决呢?

选项1:将所有内容放入多项目构建中

选项2:从多个单独的版本创建复合版本

选项3:创建一个“ uber” gradle构建,该构建使用GradleBuild任务调用其他构建

apply plugin: 'base'

def buildDirs = ['dir1', 'dir2', 'dir3']

buildDirs.each { buildDir ->
   Task task = tasks.create(name: "build${buildDir.capitialize()}", type: GradleBuild) {
      dir = buildDir
      tasks = ['build']
   }
   build.dependsOn task
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM