我能够在Eclipse中(使用JDK 1.6)成功执行以下代码。
ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory(userName, password, hostName);
// Create a Connection
connection = factory.createConnection();
// start the Connection
connection.start();
//some processes
使用的配套罐子:
slf4j-api-1.6.1.jar
javax.annotation-api-1.2-b01.jar
javax.jms-api-2.0.jar
management-api-1.1-rev-1.jar
activemq-core-5.7.0.jar
但是通过ant进行构建(使用JDK 1.6)时,低于编译错误。
[javac] d:\jenkinshome\jobs\DocumentumArtifacts V15 DEV\workspace\javamethods\org\ifc\rms\methods\PermanentDocbaseMethods.java:324: cannot access java.lang.AutoCloseable
[javac] class file for java.lang.AutoCloseable not found
[javac] connection.start();
[javac]
任何帮助对我来说都是非常有益的!!
答案 0 :(得分:2)
接口Autocloseable
已在Java 1.7中引入,因此无法按照javadoc中的报告使用Java 1.6进行编译:
因为:1.7
验证是否可以使用较新的jdk。这取决于项目的要求。 如果不可能,则必须使用与Java 1.6兼容的旧版本库。
答案 1 :(得分:2)
java.lang.AutoCloseable
在1.6中不存在
来自https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html:
由于: 1.7
老实说,我很惊讶您能够在Eclipse中进行编译和运行。我的猜测是Eclipse决定使用较新的JDK进行编译,而您在那里并没有真正使用1.6。