当我尝试使用JDK6 / 7编译commons-dbcp-1.2.2时,我收到此错误:
org.apache.commons.dbcp.BasicDataSource不是抽象的,并且不会覆盖java.sql.Wrapper中的抽象方法isWrapperFor(java.lang.Class)
这是因为在java.sql.Wrapper
没有isWrapperFor
方法的时候,commons-dbcp-1.2.2是在JDK6之前编写的。
所以我安装了JDK5,但是我得到了这样的消息(可能是因为所有Java7编译的JAR):
java.lang.UnsupportedClassVersionError:.class文件中的错误版本号
如何解决这个问题?
答案 0 :(得分:1)
我终于设法编译了commons-dbcp-1.2.2,我就是这样做的:
下载修订版558600(因为有人为它编写了正确的补丁。它只有1.2.2,只有一些修复)
svn checkout -r 558600 http://svn.apache.org/repos/asf/commons/proper/dbcp/trunk commons-dbcp
下载this patch(explanation of the patch)并修补:
wget https://issues.apache.org/jira/secure/attachment/12362389/patch.txt
patch -p0 <patch.txt
将build.properties.sample
复制到build.properties
,下载文件中描述的jar,然后更改为相应的路径。
使用OpenJDK 7构建。