2009-06-18 3 views
1

В Java 5 есть способ по умолчанию передать URL-адрес в систему и запустить ли он приложение, связанное с ним? Например, http: // ссылки обычно открывают IE или Firefox, но такие вещи, как itms: // должны открывать iTunes.Java: Как запустить зарегистрированное приложение системы для URL-адреса

Если возможно, я бы предпочел не использовать Runtime.exec(), чтобы запустить какой-то внешний процесс напрямую, потому что это будет специфично для платформы. Если нет другого пути, что бы я назвал Windows/OS X и Linux для охвата самых популярных?

+0

См. Также: http://stackoverflow.com/questions/526037/java-how-to-open-user-system-preffered-editor-for-given-file – erickson

ответ

2

Я согласен с иван, что Java Desktop API будет работать, но это только 6.

Я знаю, как это сделать на Windows, (это включает в себя выполнение rundll32.dll), но я сделал несколько быстрых Googling и this link кажется, что ваш лучший снимок.

Надежда, что помогает.

4

Используйте Java Desktop API

Desktop desktop = Desktop.getDesktop(); 
if (desktop.isSupported(Desktop.Action.BROWSE)) { 
    desktop.browse(uri); 
} 
+0

Я не думаю, что это было добавлено до Java 6. – erickson

+0

Извините, вы правы. –

0

Windows, это "начать [URI]", OSX это "открыть [URI]", Linux не имеет аналогов, как все это зависит от их менеджера окон.

Что касается ли itms: // открывает iTunes, все зависит от их конфигурации.

Ответ Ивана намного лучше, чем у меня.

0

Похоже, вы хотите java.awt.Desktop, но я думаю, что он был введен в 1.6 и не был доступен в 5 ... :-(