2013-02-26 1 views
0

Я в ситуации, когда мне нужно создать простую пусковую установку, которая позволяет мне также выбрать, какой веб-адрес запускать с различными версиями java. Я исследовал несколько сайтов. Если пользовательские настройки параметров окна не являются параметрами, так как он будет генерировать слишком много запросов поддержки, или у пользователя нет привилегий. То, что я хочу, - это способ программирования или изменения версии Java, используемой для запуска URL-адреса. Я видел, как проприетарные системы делают пусковые установки с gui, что позволяет вам изменять адресную и java-версию, а затем запускать ее в браузере. Я новичок в развитии и, очевидно, не понимаю, какие методы использовать.Запуск URL-адресов на основе разных версий java

Не могли бы вы указать мне в правильном направлении. Мне комфортно писать guis (в C# или java) Мне просто нужно знать, как написать функцию для кнопки запуска?

function launchbutton(url, javaversion) 

{ 

If (javaversionselect == 1.3) 
{ 
open url in default browser running java version 1.3 
} 

If (javaversionselect == 1.4) 
{ 
open url in default browser running java version 1.4 
} 

If (javaversionselect == 1.5) 
{ 
open url in default browser running java version 1.5 
} 

If (javaversionselect == 1.6) 
{ 
open url in default browser running java version 1.6} 
} 
+0

Вы хотите, чтобы программно открыть URL-адрес в браузере по умолчанию и выбрать, какой JVM используется браузером для размещения апплетов? Я уверен, что ничего подобного не возможно. –

+0

Возможно ли использовать пользовательский браузер? Вы могли бы сделать это с различными версиями «Portable Java» и некоторой магией подкачки. –

+0

@KirkWoll Я не могу описать это точно, но я видел программу, в которой вы выбираете URL-адрес, затем выберите версию java и нажмите на запуск. Если бы вы перешли на адрес вручную, он не загрузил бы страницу, если бы у вас не было правильной версии java в вашей системе. Есть ли другие способы сделать это? – user1015711

ответ

0

Вы wan't быть в состоянии изменить версию Java, что, например, «IE» или использование «Chrome» из жгутов приложения, только ваши решения будут использовать какое-то встроенный браузер

  • JBrowser
  • XPCOM от Mozilla
  • Просмотр источника и посмотрим, как Eclipse, встроенный браузер их
0

Вы можете написать апплет, который это сделает. Компиляция что-то вроде этого, используя javac -target 1.3:

public class Redirector 
extends Applet { 
    @Override 
    public void start() { 
     String newURL; 

     Package pkg = Object.class.getPackage(); 
     if (pkg.isCompatibleWith("1.7")) { 
      newURL = "java17.html"; 
     } else if (pkg.isCompatibleWith("1.6")) { 
      newURL = "java16.html"; 
     } else if (pkg.isCompatibleWith("1.5")) { 
      newURL = "java15.html"; 
     } else if (pkg.isCompatibleWith("1.4")) { 
      newURL = "java14.html"; 
     } else { 
      newURL = "java13.html"; 
     } 

     try { 
      getAppletContext().showDocument(new URL(newURL)); 
     } catch (MalformedURLException e) { 
      showStatus(e.toString()); 
     } 
    } 
} 

Если вы действительно хотите позволить пользователю выбрать версию Java для себя, вы можете создавать элементы пользовательского интерфейса в вашем апплета для этого:

public class Redirector 
extends Applet 
implements ActionListener { 
    private Choice list; 

    @Override 
    public void init() { 
     try { 
      EventQueue.invokeAndWait(new Runnable() { 
       public void run() { 
        list = new Choice(); 
        list.add("1.7"); 
        list.add("1.6"); 
        list.add("1.5"); 
        list.add("1.4"); 
        list.add("1.3"); 

        Button button = new Button("Launch"); 
        button.addAtionListener(Redirector.this); 

        add(new Label("Java version:")); 
        add(list); 
        add(button); 
       } 
      }); 
     } catch (InvocationTargetException e) { 
      throw new RuntimeException(e); 
     } catch (InterruptedException e) { 
      e.printStackTrace(); 
     } 
    } 

    public void actionPeformed(ActionEvent event) { 
     String newURL; 
     String version = list.getSelectedItem(); 
     if (version.equals("1.7")) { 
      newURL = "java17.html"; 
     } else if (version.equals("1.6")) { 
      newURL = "java16.html"; 
     } else if (version.equals("1.5")) { 
      newURL = "java15.html"; 
     } else if (version.equals("1.4")) { 
      newURL = "java14.html"; 
     } else { 
      newURL = "java13.html"; 
     } 

     try { 
      getAppletContext().showDocument(new URL(newURL)); 
     } catch (MalformedURLException e) { 
      showStatus(e.toString()); 
     } 
    } 
} 
Смежные вопросы