为什么 Java 不能自动更新?

为什么 Java 不能自动更新?

我们都看到过许多有关 Java 严重安全问题的报道。这其实不是什么新鲜事,但最近似乎越来越受关注。

为了解决这些问题,已经发布了一个又一个更新,他们试图解决这些问题真的很棒。但是,如果用户不安装更新,更新有什么用呢?我看到很多用户只是点击那个小小的 Java 更新通知窗口,甚至更糟的是,他们关闭了 Java 更新检查,因为一直收到这些消息太烦人了。

有时我觉得最好是将 Java 全部删除,这样就能一劳永逸地解决这个安全问题。但这并不容易,因为我们都有一些需要它的程序、插件等。

我在 Superuser 上看到过一些问题,这些问题与如何使用 GP 将 Java 更新推送到网络上的客户端或如何编写脚本为您运行 Java 更新有关。但这并不是我真正想知道的。

我的问题是:为什么Java不能设置自动更新,特别是它有这么多的安全问题?

  • 是因为必须“以管理员身份运行”并且“没有其他方法”吗?我仍然认为安装可以更“在后台运行”,用户只需在开始时批准即可。
  • 是不是为了让 Java 能够在 Ask.com 浏览器工具栏上销售,而他们在安装过程中总是会询问这个问题。他们是否被某种巧妙的法律协议束缚,迫使他们在未来 50 年内向用户显示这个问题?
  • Java 团队/Oracle 是否已经不再了解用户的需求,还是他们只是无知?

并非所有人都喜欢自动安装,我完全明白这一点。但大多数人(比如我)生性懒惰/无知,他们肯定会从这样的功能中受益。至少应该有一个“始终更新到最新版本”的选项,还是说这对 Oracle 的要求太高了?

答案1

有许多因素,例如大小、打包类型和管理要求,但最重要的是,一年来,数十万个 Java 程序都是针对特定 Java 版本编写的,而他们选择的维护方案会导致与每个主要版本的不兼容(通过对象/方法弃用和黑名单)。许多应用程序在多个主要版本上运行良好,但许多应用程序却不能。1.4 和 1.5 之间的变化尤其麻烦,许多开发人员对 8+ 犹豫不决。

因此,为了运行您喜欢的程序,您需要能够保留安装的旧运行时间,并控制它们的更新方式/时间。

相关内容