activemq java版本

时间:2010-12-18 01:18:52

标签: activemq

在ActiveMQ文档中,提到:

注意:ActiveMQ可以在Java 1.4.x系统上运行,但是,需要Java 1.5来编译/构建ActiveMQ ..

这怎么可能?如果它是使用1.5编译的,如果它是在1.4中执行的,我们是否应该得到'Unsupported major.minor version'异常?

2 个答案:

答案 0 :(得分:0)

难道您不认为它不是由ActiveMQ本身引起的,而是两个Java版本(1.4和1.5)之间的差异以及Java1.5源代码编译的完成方式。所有Java5新颖性都被翻译成Java 1.4字节码(例如,阅读有关用于实现Java1.5泛型的类型擦除技术)。

我不是百分百肯定的;当我读到你的问题时,这是我的第一个想法。

答案 1 :(得分:0)

有一些技术可以将.cl​​ass-Files(Java Bytecode)转换为另一个早期的JVM。例如,Ist确实将新的for-Loop(for(X x:xs))转换为具有迭代器的那个。如果此转换过程未将它们添加到目标-JDK兼容版本中,则对新JDK-Classes的引用可能不起作用。

我认为这是一个maven建设者。使用它时,我能够在Java 1.5中为旧的WebSphere Server 1.4编程portlet。 Maven在构建war文件时为我做了一切。输出是portlet-1.0.0.java4.war和portlet-1.0.0.java5.war。

请参阅Retrotranslator:http://retrotranslator.sourceforge.net/