使用Java 6进行编译

时间:2013-01-28 22:32:55

标签: java java-7 java-6

我的Java applet /应用程序的许多用户没有安装Java 7(大约80%,令人惊讶)。如果我用Java 6编译我的程序,

  • Java 7用户是否会接触到Java 6中的安全漏洞?
  • 我的applet /应用程序是否适用于Java 6 7?
  • 有什么缺点吗?我并没有真正使用任何新的Java 7功能(除了易于修复的菱形运算符)。

2 个答案:

答案 0 :(得分:3)

  

Java 7用户是否会暴露于Java 6中的安全漏洞?

AFAIK,它是Java 7,它具有最严重的安全漏洞。编译代码的方式并不重要,只需要代码的作用以及您使用的JVM版本。

  

我的applet /应用程序是否可以与Java 6和7一起使用?

如果没有错误,是的。如果它有bug,最有可能在两者上做同样的事情,但可能不会。也就是说,可能是一个版本中出现了一个错误,但是在不同版本中没有出现另一个错误或以不同的方式出现错误。

  

有任何缺点吗?我并没有真正使用任何新的Java 7功能(除了易于修复的菱形运算符)。

缺点是您无法使用新语法或新的Java 7库。

代码运行或执行的方式不会改变。

答案 1 :(得分:0)

在浏览器沙箱中运行时,Java 7和Java 6都发现了安全漏洞;即在运行applet时。最近的一个是Java 7,但之前的版本已经应用于Java 6或多个版本。

问题是运行applet的人需要在浏览器中启用Java。并且 使他们容易受到种植坏applet的人的攻击;例如在黑客第三方网站上。

我们可以为用户提供的最佳安全建议是禁用浏览器Java,因为过去和未来可能存在漏洞。 (在某些平台上,建议完全卸载)。这些措施会产生使applet无用的副作用。

IMO,您应该完全删除您的applet功能,而不是尝试使其适用于多个Java版本。