Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
管理Java 7的升级_Java_Applet_Jnlp_Java 7 - Fatal编程技术网

管理Java 7的升级

管理Java 7的升级,java,applet,jnlp,java-7,Java,Applet,Jnlp,Java 7,我的团队使用大量Java应用程序和小程序(包括内部创建的和来自外部源的) 自从Java 7发布以来,我们在一些应用程序中使用它,我们发现了一些不支持Java 7的外部应用程序和小程序的问题(虽然我不知道为什么——但是,在与提供这些应用程序的组织的技术支持人员交谈后,他们表示他们的应用程序与Java 7不兼容) 不幸的是,这些应用程序中的许多都声明它们可以在任何(最新)版本的Java上工作(例如1.5+)。显然,如果这些小程序和应用程序的提供商能够修改他们的代码,以指定他们可以使用哪个版本的Jav

我的团队使用大量Java应用程序和小程序(包括内部创建的和来自外部源的)

自从Java 7发布以来,我们在一些应用程序中使用它,我们发现了一些不支持Java 7的外部应用程序和小程序的问题(虽然我不知道为什么——但是,在与提供这些应用程序的组织的技术支持人员交谈后,他们表示他们的应用程序与Java 7不兼容)

不幸的是,这些应用程序中的许多都声明它们可以在任何(最新)版本的Java上工作(例如1.5+)。显然,如果这些小程序和应用程序的提供商能够修改他们的代码,以指定他们可以使用哪个版本的Java,而不是声明他们可以使用他们不使用的版本,那就太好了。但是,在此期间我能做些什么呢

Webstart应用程序:

为此,我创建了一个批处理文件,指定要使用的JRE版本,例如:

C:/"Program Files"/Java/jre6/bin/javaws http://www.website.com/path/to/app.jnlp
有更好的方法吗

Web小程序:

我没有成功地指定web小程序。我知道我可以为Internet Explorer()指定JRE版本,但我不想强制所有web小程序使用旧版本的Java—我只想根据具体情况进行指定

我曾考虑创建一个批处理文件,用指定的特定JRE启动InternetExplorer…类似于

start iexplore [specify JRE] http://www.website.com/pageWithWebApplet.html
…但我不知道如何指定JRE。有什么想法吗


或者,如果有更好的方法,我很想知道。

对于小程序,您可以尝试保存小程序所在的页面及其JNLP文件,编辑JNLP文件以将
version=“1.6+”
更改为
version=“1.6”
(或其他),更改HTML文件,使小程序指向JNLP文件的本地版本,但其他所有内容都指向原始站点,将修改后的文件放在您的内部网络上,并在您要使用小程序时将web浏览器指向您的内部网络页面。由于小程序的代码库仍将位于外部网站上,而不是您的i在ntranet中,不受信任的小程序仍然能够建立回其原始主机的网络连接


当然,这假设外部网站允许在HTTP referer不是其站点时下载相关文件(即,它允许“热链接”其资源)。

对于小程序,您可以尝试保存小程序所在的页面及其JNLP文件,编辑JNLP文件以更改
version=“1.6+”
version=“1.6”
(或其他),更改HTML文件,使小程序指向JNLP文件的本地版本,但其他所有内容都指向原始站点,将修改后的文件放在您的内部网络上,并在您要使用小程序时将web浏览器指向您的内部网络页面。由于小程序的代码库仍将位于外部网站上,而不是您的i在ntranet中,不受信任的小程序仍然能够建立回其原始主机的网络连接


当然,这假设外部网站允许在HTTP referer不是其站点时下载相关文件(也就是说,它允许其资源的“热链接”).

这些应用程序是否声明它们不会与Java 7一起工作,或者它们只是失败了?因为Java 7刚刚问世,你不能期望开发人员事先预测它不会兼容。过去的Java版本在向后兼容性方面一直非常好,所以有理由假设任何在早期版本上工作的应用程序JVM将在Java 7下运行。@Nate C-K-jnlp文件或网站称它们与所有最新版本的Java(如1.5+)一起工作。应用程序/小程序无法使用Java 7启动。我同意,不能指望它们预测与Java 7的不兼容性,但由于这些都是大型组织,而且许多客户每天都在使用应用程序/小程序,所以现在应该已经提出了这个问题(或者至少,我现在已经提出了!)他们的代码应该进行相应的修改——这是理想的解决方案。然而,我需要一种在他们这么做之前启动并运行的方法……在没有对业务关键型的东西进行测试的情况下就跳上任何主要版本都有点愚蠢。Java 7没有什么真正令人信服的优点做所有的工作来确保它100%与遗留应用程序一起工作。我们至少一年内不会切换到它。@Jarrod-这没有抓住要点……问题的实质是:a)我想使用肯定需要特定java版本的应用程序/小程序,b)这些应用程序/小程序没有在代码中指定它们需要特定的java版本(例如在jnlp文件中)。所以重复这个问题。。。我如何根据具体情况设置一个配置,以使用应用程序/小程序所需的Java版本?撇开想这样做的原因不谈,这是一个完全合理的问题,值得回答。(我自己会回答,但我也不知道。)这些应用程序是否声明它们不能与Java 7一起工作,或者只是失败了?由于Java7刚刚问世,您不能期望开发人员事先预测它不兼容。过去的Java版本在向后兼容性方面一直非常好,因此有理由假设任何在早期JVM上运行的应用程序都可以在Java 7下运行。@Nate C-K-jnlp文件或网站说它们可以在所有最新版本的Java(例如1.5+)下运行。应用程序/小程序无法使用Java 7启动。我同意,不能指望他们预测与Java 7的不兼容性,但由于这些都是大型组织和许多客户每天使用的应用程序/小程序,这个问题现在应该已经提出了(或者至少,我现在提出了!),他们的代码应该相应地修改——这是理想的