Почему мой файл Runnable .jar не печатает никаких сообщений в терминале при запуске из сценария Apple? - PullRequest
0 голосов
/ 11 января 2020

Я скомпилировал файл jar. Вот код:

package javaProject;

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        JFrame frame = new JFrame("FrameDemo");

        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);

        System.out.println("Enter something >>> ");
        Scanner scanner = new Scanner(System.in);
        System.out.println(scanner.nextLine());
        scanner.close();
    }
}

Вот мой сценарий Apple Script:

do shell script "java -jar /Users/Harry/Desktop/appleScript.app/Contents/javaProject.jar"

Ничего не печатается в консоли, и объект сканера не запрашивает мой ввод в любом случае точка, но JFrame создан. Кто-нибудь может объяснить, почему это так? Спасибо.

1 Ответ

0 голосов
/ 11 января 2020

do shell script не работает с / в консоли, результат (или ошибка) просто возвращается в скрипт. Если вы хотите взаимодействовать или просматривать ход выполнения, сценарий может быть запущен в чем-то, что обеспечивает консоль, например, Terminal (который поддерживает сценарии). Обратите внимание, что новое окно / вкладка будет создаваться при каждом запуске сценария, если вы не укажете что-то другое - например, следующий сценарий всегда будет использовать первую вкладку первого окна:

tell application "Terminal"
    activate
    try
        do script "echo 'This is a test.' " in tab 1 of window 1
    on error errmess -- no window
        log errmess
        do script "echo 'This is a test.' "
    end try
end tell
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...