簡體   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