我的 Java 小程序/应用程序的许多用户都没有安装 Java 7(令人惊讶的是大约 80%)。如果我用 Java 6 编译我的程序,
- Java 7 用户是否会暴露于 Java 6 中的安全漏洞?
- 我的小程序/应用程序可以与 Java 6和7 一起使用吗?
- 有什么缺点吗?我并没有真正使用任何新的 Java 7 功能(除了很容易修复的菱形运算符)。
Java 7 用户是否会暴露于 Java 6 中的安全漏洞?
AFAIK,Java 7 具有最严重的安全漏洞。你如何编译代码并不重要,重要的是代码做什么以及你使用哪个 JVM 版本。
我的小程序/应用程序可以与 Java 6 和 7 一起使用吗?
如果它没有错误,是的。如果它有错误,它最有可能在两者上做同样的事情,但可能不会。即,可能是一个版本中出现了一个错误,而在另一个版本中没有出现,或者在不同版本中以不同的方式出现。
有什么缺点吗?我并没有真正使用任何新的 Java 7 功能(除了很容易修复的菱形运算符)。
缺点是您不能使用新语法或新的 Java 7 库。
代码运行或执行的方式没有改变。
在浏览器沙箱中运行时,Java 7 和 Java 6 都发现了安全漏洞;即在运行小程序时。最新的只是 Java 7,但之前的已经应用于 Java 6 或多个版本。
问题是运行您的小程序的人需要在他们的浏览器中启用 Java。这使得它们容易受到种植坏小程序的人的攻击;例如在被黑的第 3 方网站上。
我们可以给用户的最佳安全建议是禁用浏览器 Java,因为过去和未来可能存在漏洞。(在某些平台上,建议完全卸载)。这些措施将产生使您的小程序无用的副作用。
IMO,您应该完全删除您的小程序功能,而不是尝试使其与多个 Java 版本一起使用。