无法通过Java应用程序远程构建Meteor项目

时间:2016-07-25 14:18:23

标签: java eclipse ubuntu meteor processbuilder

我正在尝试从Java应用程序运行Meteor项目,这是我为它编写的代码:

String[] command  = { "/bin/bash", "-c" ,"cd /home/cloud2/Music/MyMeteorProject; meteor run android-device" };
ProcessBuilder builder = new ProcessBuilder(command);
        builder.redirectErrorStream(true);
        Process process=null;
        try {
            process = builder.start();
        } catch (IOException e1) {
            e1.printStackTrace();
        }
        InputStream is = process.getInputStream();
        BufferedReader reader = new BufferedReader(new InputStreamReader(is));

        String line = null;
        try {
            while ((line = reader.readLine()) != null)
               System.out.println(line);// This line display error message on the console
        } catch (IOException e) {
               e.printStackTrace();
        }

从Java应用程序构建Meteor项目在Eclipse控制台中显示以下错误:

  

您的系统似乎尚未满足构建的所有要求   适用于Android的应用。

     

请按照移动指南中的安装说明操作:   http://guide.meteor.com/mobile.html#installing-prerequisites

     

个人要求的状况:

     

✓JavaJDK

     

✗AndroidSDK:   无法找到' ANDROID_HOME'环境变量。尝试设置
  手动设置。无法找到' android'你的命令   ' PATH&#39 ;.尝试更新你的路径'包含有效SDK的路径   目录。

     

✗Android目标:未找到Android SDK。确保它   已安装。如果它不在默认位置,请设置   ANDROID_HOME环境变量。

     

✗格拉德:找不到gradle   Android SDK中的包装器。找不到Android SDK目录   可能需要安装Android SDK或设置' ANDROID_HOME' ENV   变量

但是当我从终端运行相同的项目时,它运行正常,所以看起来已经设置了ANDROID_HOME。那么为什么项目不能从Java应用程序运行呢?

1 个答案:

答案 0 :(得分:0)

试试这个,添加如下的ANDROID_HOME。

 try {
      Map<String, String> envs = pb.environment();
      System.out.println(envs.get("Path"));
      envs.put("ANDROID_HOME", "<ANDROID_PATH>");
      pb.redirectErrorStream();
      process = builder.start();
   } catch (IOException e1) {
        e1.printStackTrace();
   }