как запустить DMG на Mac через Java - PullRequest
2 голосов
/ 28 октября 2011

Пожалуйста, дайте мне знать, как запустить / вызвать приложение .dmg в Java. Я использовал ниже синтаксис Runtime.getruntime.exec("sample.dmg") но выдает ошибку как «отказано в разрешении» с кодом ошибки 13. Пожалуйста, дайте мне знать, как вызвать dmg.

Ответы [ 2 ]

8 голосов
/ 28 октября 2011

Файл DMG не является исполняемым напрямую.Вам нужно использовать команду открытия Mac OSX:

Runtime.getRuntime().exec(new String[] { "/usr/bin/open", "sample.dmg" });

Возможно, вам потребуется полный путь к файлу dmg, но в противном случае он мне кажется вполне подходящим.Откройте также, давайте укажем приложение, чтобы сделать открытие, чтобы вы могли делать классные вещи, такие как отправка этого документа в приложении Почта в виде вложения:

Runtime.getRuntime().exec(
    new String[] { "/usr/bin/open", "-a", "Mail", "letter.pdf" });

Я использую команду открытия из Mac, как этовремя.

2 голосов
/ 28 октября 2011

Вы должны использовать Desktop.open(File file), который будет использовать соответствующий открыватель для ОС.В вашем случае на Mac он будет использовать open.Это лучше, чем Runtime.exec, поскольку вы не полагаетесь на точное местоположение команды open.Более того, это работало бы даже в Windows, если бы у нее было приложение для монтирования DMG, такое как Mediafour MacDrive.

Суть в том, чтобы использовать Desktop.open(File file), чтобы открыть файл с помощью открывателя операционной системы по умолчанию, вот что он там есть.за.Большинство людей используют Runtime.exec только в крайнем случае.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...