我正在使用在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();
答案 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。