我应该使用哪种Java版本的桌面应用程序吸引最多的用户?[关闭]


15

我是否可以假设大多数最终用户使用的版本都比Java 8老?由于我不想强迫人们升级以使用我的应用程序,因此我是否应该计划从一开始就使用Java 7甚至6,即使这意味着我不能自己使用较新版本的好处作为开发者?


6
这个问题的答案一年后将如何相关?5年?提出一个关于例如Java 8与Java 7的比较的问题很好,但是对于这个站点来说,使用两个版本中的哪个不是一个好问题,因为问题本身是及时的,更不用说它本质上是及时的了。要求产品推荐。

您的用户是谁,它是什么样的应用程序?世界各地的祖母应用程序与IT人员的公用程序应用程序不同。
Freiheit

Java未预先安装(与Windoze上的.NET不同),因此您必须在应用程序中包含JRE(的一部分)。因此,您可以使用最好的任何东西。这意味着-使用最新的稳定版本。(现在意味着– JRE 1.8版本)
显示名称

考虑到安全性的最佳实践是考虑安装Java,这是不可接受的风险,我认为唯一合理的答案是“一点都没有”。
R .. GitHub停止帮助ICE

@R ..,您在哪里听到这样的“最佳做法”?
Arturo TorresSánchez2015年

Answers:


44

在所有桌面都锁定到特定版本的受控公司环境之外,依靠已安装的JRE正确无济于事。在这种情况下,您应该向控制该环境的人员提出这个问题。

对于大众市场的Java桌面应用程序,应该使用捆绑了您希望它们使用的JRE 的安装程序启动程序,或者设置Java Web Start(JAWS)。

请注意,如果您实际实际分发捆绑的JRE,则必须遵守许可条款。我不是律师,但是对于大多数目的来说,这些都不应该成为问题。如果您有一个法律团队,那么您当然应该让他们经过他们。

对于开发人员或其他面向技术的工具,通常最好将jars发布在Maven Central上,因此分发和下载是完全自动化的。在这种情况下,坚持使用较旧的Java版本是一种优势,因为它使它们可以在锁定较旧版本的公司中使用。

但是对于今天开始的项目,我不会太担心。

最后,如果上述所有工作量太大,您可以将源代码发布在githubbitbucket上,然后让用户自己构建。


3
对于一个永恒的问题的永恒答案,太棒了。我要补充一点,您可以为喜欢这种东西的人分发JRE免费替代版本。甚至可以使它成为可移植的版本。
StarWeaver 2015年

1
捆绑JRE需要许可,如果应用程序访问Internet,则非常危险。
2015年

请详细说明,这是否意味着即使我发布软件的目的不是为了牟利,还是开放源代码,我都必须获得JRE的许可?
Andreas Hartmann'3


1

要考虑的另一点是,根据项目的大小,将发布什么版本的Java和将淘汰什么版本的Java。对于大多数规模较大的项目,明智的做法是使用当前的“超出beta / alpha”版本(在本例中为Java 8),该版本在发行时可能不是最新的。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.