Сценарий оболочки выполняется с двойным щелчком мыши, но не с "запустить в консоли"

Я знаю, что это звучит странно, но я не знаю почему.

У меня есть сценарий оболочки, который открывает графический интерфейс. Когда я щелкаю правой кнопкой мыши по файлу и нажимаю "запустить в консоли", это то, что я получаю:

запустить в консоли

Каким-то образом сценарий просто не продолжает продолжать.

НО, когда я пытаюсь дважды щелкнуть сценарий оболочки или запустить его через консоль (./vtdStart.sh):

оно работает

работает нормально.

В чем может быть проблема?

Мне нужно запустить скрипт через JAVA:

public static void main(String[] args) {
    ProcessBuilder pb = new ProcessBuilder("//home/bfft/VTD/VTD.2.1/bin/vtdStart.sh");

    Thread thread = new Thread(() -> {
        try {
        Process p = pb.start();
        BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
        String line;


        while ((line = br.readLine()) != null) {
            System.out.println(""+line);
        }

    } catch (IOException ex) {
        Logger.getLogger(JavaApplication2.class.getName()).log(Level.SEVERE, null, ex);
    }
    });

    thread.start();

}

Но, как вы уже догадались, программа не будет выполнена. Это та же "ошибка", что и при попытке "запустить в консоли".

0 ответов

Другие вопросы по тегам