Выполнение команды «adb shell date> date.txt» не работает в Mac с использованием Process Exec - PullRequest
0 голосов
/ 04 мая 2018

У меня есть скрипт автоматизации, написанный на Java. Вот пример кода.

 String command = "adb shell date > date.txt";
 Process process = Runtime.getRuntime().exec(command);

При выполнении кода в Windows он работает нормально, но когда я запускаю его в Mac, он не работает должным образом. Позже я обнаружил, что в Windows выполнение этой команды создает файл в моей локальной директории проекта на ПК. Но в случае Mac его не удалось при попытке создать файл в каталоге устройства и отображение ошибки. Хотя с терминала Mac работает нормально.

Мой вопрос: почему на моем компьютере Mac не работает и почему файл не создается на моем локальном ПК?

1 Ответ

0 голосов
/ 04 мая 2018

Среда Java Runtime не обязательно выбирает те же переменные среды, путь к команде и псевдонимы, которые работают при использовании терминала MacOS.

Вы можете попробовать ввести which adb в Терминал и посмотреть, какой путь вы получите, если таковой имеется. Если вы получили определенный путь, попробуйте выполнить этот полный путь, а не только adb, из Java.

...