从Aptana / Eclipse中调用shell命令

时间:2013-04-06 19:13:16

标签: java eclipse aptana

我正在尝试为Aptana添加一项功能,此功能要求我找出宝石在系统中的位置。在红宝石中,我会运行像......这样的命令。

gem_folder_path = `rvm gemdir`

在java中显然有更多的因素需要处理,但似乎我一直试图实现的java解决方案在eclipse / Aptana IDE的范围内无法工作(我已经测试了它独立的它和它在我的helloworld.java文件中正常工作)。 shell命令是禁用的还是什么?

这是我当前的java解决方案,它不起作用。

public static String getGemsDirectory()
{
    try
    {
        Process proc = Runtime.getRuntime().exec("which ruby");

        BufferedReader stdInput = new BufferedReader(new 
                                        InputStreamReader(proc.getInputStream()));

        BufferedReader stdError = new BufferedReader(new 
                                        InputStreamReader(proc.getErrorStream()));


        String s;
        String commandOutput = "";
        // read the output from the command
        System.out.println("Here is the standard output of the command:\n");
        while ((s = stdInput.readLine()) != null) {
            //System.out.println(s);
            commandOutput += s;
        }

        // read any errors from the attempted command
        System.out.println("Here is the standard error of the command (if any):\n");
        while ((String s = stdError.readLine()) != null) {
            //System.out.println(s);
            commandOutput += s;
        }

        int statusCode = proc.exitValue();
        return commandOutput;
    }
    catch (IOException e)
    {
        // TODO Auto-generated catch block
        e.printStackTrace(); 
        return "";
    }
}

1 个答案:

答案 0 :(得分:0)

本教程将向您展示如何运行本机OS命令。从Eclipse / Tomcat和Java中为我工作 http://www.java-programming.info/tutorial/pdf/java/22-Native-Apps.pdf