有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

开源仍然有很好的理由支持JDK1.4吗?

我正在考虑用Java编写一个开源项目,并且正在激烈争论是否支持JDK1.4及更高版本。该框架肯定可以使用较旧的Java模式和习惯用法来编写,但它将真正受益于更成熟的1.5+版本的特性,如泛型和注释

所以我真正想知道的是,在选择框架时,对旧JDK的支持是否是一个主要的决定因素

可以理解的是,有些遗留系统仍然使用较旧的JDK,但撇开后勤不谈,有没有人有令人信服的技术理由支持1.4 JDK

谢谢

史蒂夫


共 (5) 个答案

  1. # 1 楼答案

    我们的客户只安装了1.4版本(AS/400),安装新的JVM是一项巨大的负担。所以,我是那些认为java 1.4兼容性很重要的人之一。p>

    注:这很可能在编译后使用Retro Translator实现。然后,您将使用带有原始JAR的Java1.5和带有已翻译JAR的Java1.4进行所有测试

    http://retrotranslator.sourceforge.net/

  2. # 2 楼答案

    我想不出任何技术上的理由来坚持主流Java的1.4兼容性,除了特定的移动或嵌入式设备(见Jon回答的讨论)。旧版支持必须有限制,1.5版已经快5年了。在我看来,让人们继续前进的更有说服力的理由是更好的

    更新(我睡不着):一个很好的先例要考虑的是Spring 3 will require Java 5 (pdf)。还考虑到大公司正在使用的服务器的很多,或者将很快成为EOL(5.1是不支持的,{a2},JBase4支持ends Sep '09),java 1.4本身是out of support since Oct '08。p>

  3. # 3 楼答案

    我想这取决于你的项目是什么。我们有一个客户机仍然使用J2SE1.4(JRun,WebSphere6)

    虽然我们的客户机都不在J2SE 1.3上,但我们有一些核心组件,我们试图在这些组件上保持J2SE 1.3的兼容性(非常基本,高度可重用的东西)

    尽管如此,这可能不是一个问题。对于我们的客户机,我们能够通过Retroweaver运行JAR/类来使用一些J2SE 1.5编译库

  4. # 4 楼答案

    JDK1.4早在2008年10月就失去了Sun的支持。我能想到的唯一原因是,为什么您应该支持在不受支持的JVM上运行的软件,那就是向后兼容性和仍然严重依赖它的客户群

  5. # 5 楼答案

    有没有可能有人想在黑莓或类似的移动设备上使用它?我不相信他们一般都支持1.5