基于不同版本的java启动URL

时间:2013-02-26 02:42:59

标签: java url cross-browser launcher

我处于这样一种情况,我需要创建一个简单的启动器,允许我选择使用不同版本的java启动哪个Web地址。我研究过几个网站。让用户更改窗口设置不是一个选项,因为它会生成太多支持调用或用户没有权限。我想要的是一种编程方式来设置或更改用于启动URL的java版本。我见过专有系统使用gui制作启动器,允许你更改地址和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}
}

3 个答案:

答案 0 :(得分:0)

Bare Bones Browser Launcher将检测java版本并使用适当的调用。

http://www.centerkey.com/java/browser/

答案 1 :(得分:0)

您无法通过应用程序更改“IE”或“Chrome”使用的java版本,您唯一的解决方案是使用某种嵌入式浏览器

  • jBrowser
  • 来自Mozilla的XPCOM
  • 浏览源代码并了解Eclipse如何嵌入浏览器

答案 2 :(得分: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版本,您可以在applet中创建UI元素:

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());
        }
    }
}