ActiveMQ版本与jre 1.5冲突

时间:2012-12-21 04:47:14

标签: activemq java

我正在使用在jre 1.5上运行的Axway服务器。所以它接受1.6以下的所有分类。但问题是我读了THIS LINK,我得到了这一行作为指南

  

环境:       *用于部署的Java Developer Kit(JDK)1.4.x或更高版本以及用于编译/构建的1.5.x(Java 5)。从AMQ 5.5.0开始,您需要JDK 1.6.0到**

其中说我可以使用版本5.5以下的ActiveMQs来支持jre 1.5。

当我使用ActiveMQ 5.4.3时出现错误的类版本错误。请帮助我。

这是我收到此错误的行

Object o = Class.forName("org.apache.activemq.ActiveMQConnectionFactory", 
                                    true,ConnFactory.class.getClassLoader())
                        .newInstance();

3 个答案:

答案 0 :(得分:1)

您可以将jar解压缩为zip文件,然后查看该文件夹并检查META-INF目录。 MANIFEST.MF文件将告诉您编译jar的jvm的版本。我刚刚抓住了activemq jar的5.4.3版本,它说:

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: chirino
**Build-Jdk: 1.6.0_26**
Specification-Title: ActiveMQ :: Jar Bundle
Specification-Version: 5.4.3
Specification-Vendor: The Apache Software Foundation
Implementation-Title: ActiveMQ :: Jar Bundle
Implementation-Version: 5.4.3
Implementation-Vendor-Id: org.apache.activemq
Implementation-Vendor: The Apache Software Foundation

清楚地表明它是用1.6 jvm构建的。可能需要下载源并手动在1.5上构建它。

答案 1 :(得分:1)

在maven资源库中,在jdk 1.5上构建的activemq的最后一个版本是5.4.2。

答案 2 :(得分:0)

问题是由于新添加jar的jvm配置文件条目造成的。

我不知道,我不负责任,我无权执行任何与管理员相关的权限。

我把jar放在CLASSPATH中。所以所有类都可以访问它。

但问题是在JVM配置文件中我必须放入条目,我的意思是我必须在axway的jvm.config文件中给出带有CLASSPATH的jar的名称。虽然我把我的jar放在类路径而没有放入jvm中的条目.config,它是没用的。因为jvm初始化时它先检查配置文件,然后用它添加jar。