开源仍然有很好的理由支持JDK1.4吗?
我正在考虑用Java编写一个开源项目,并且正在激烈争论是否支持JDK1.4及更高版本。该框架肯定可以使用较旧的Java模式和习惯用法来编写,但它将真正受益于更成熟的1.5+版本的特性,如泛型和注释
所以我真正想知道的是,在选择框架时,对旧JDK的支持是否是一个主要的决定因素
可以理解的是,有些遗留系统仍然使用较旧的JDK,但撇开后勤不谈,有没有人有令人信服的技术理由支持1.4 JDK
谢谢
史蒂夫
你可以在下面搜索框中键入要查询的问题!
我正在考虑用Java编写一个开源项目,并且正在激烈争论是否支持JDK1.4及更高版本。该框架肯定可以使用较旧的Java模式和习惯用法来编写,但它将真正受益于更成熟的1.5+版本的特性,如泛型和注释
所以我真正想知道的是,在选择框架时,对旧JDK的支持是否是一个主要的决定因素
可以理解的是,有些遗留系统仍然使用较旧的JDK,但撇开后勤不谈,有没有人有令人信服的技术理由支持1.4 JDK
谢谢
史蒂夫
# 1 楼答案
我们的客户只安装了1.4版本(AS/400),安装新的JVM是一项巨大的负担。所以,我是那些认为java 1.4兼容性很重要的人之一。p>
注:这很可能在编译后使用Retro Translator实现。然后,您将使用带有原始JAR的Java1.5和带有已翻译JAR的Java1.4进行所有测试
http://retrotranslator.sourceforge.net/
# 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 楼答案
我想这取决于你的项目是什么。我们有一个客户机仍然使用J2SE1.4(JRun,WebSphere6)
虽然我们的客户机都不在J2SE 1.3上,但我们有一些核心组件,我们试图在这些组件上保持J2SE 1.3的兼容性(非常基本,高度可重用的东西)
尽管如此,这可能不是一个问题。对于我们的客户机,我们能够通过Retroweaver运行JAR/类来使用一些J2SE 1.5编译库
# 4 楼答案
JDK1.4早在2008年10月就失去了Sun的支持。我能想到的唯一原因是,为什么您应该支持在不受支持的JVM上运行的软件,那就是向后兼容性和仍然严重依赖它的客户群
# 5 楼答案
有没有可能有人想在黑莓或类似的移动设备上使用它?我不相信他们一般都支持1.5