2

Java プロジェクトで H2 データベースを使用したいのですが、残念ながら外部.jarまたは.classファイルを使用できません。(これは私の制御不能なビルド システムであり、ソースファイルを送信することしかできません。それは愚かなことです。)そこで、単純に H2 Java ソースをダウンロードし、これらすべての Java パッケージと Java ファイルを自分のプロジェクト ソース フォルダーに直接追加することを考えました。 .

ただし、そうすると、Eclipse で H2 コード ベースの一部の Java ファイルに対していくつかのビルド エラーが発生します。たとえば、ファイル「org.h2.jdbc.JdbcStatement」には、「型 JdbcStatement は、継承された抽象メソッド Wrapper.unwrap(Class) を実装する必要があります」というエラーがあります。他にもいくつかのエラーがあります。

私の質問は、H2 ソース ファイルを Java プロジェクトに適切に追加するにはどうすればよいですか?

4

1 に答える 1

2

ドキュメントのダウンロードセクションで説明されているように、H2のソースjarファイルはMavenリポジトリで利用できます。現在のバージョンは次のとおりです。

http://repo2.maven.org/maven2/com/h2database/h2/1.3.166/h2-1.3.166-sources.jar

ただし、H2のソースコードをターゲットのJavaバージョンに「切り替える」必要がある場合があります。(これは、ソースコードをJava5とJava6で同時に使用できないために必要です。たとえば、Java6のJDBCAPIはメソッドをサポートする必要ResultSet.updateNClob(int columnIndex, NClob x)がありますが、インターフェイスNClobはJava5では使用できません。 )これが、「タイプJdbcStatementは継承された抽象メソッドWrapper.unwrap(Class)を実装する必要がある」という例外が発生する理由です。

ソースコードを切り替えるには、H2のビルドスクリプトを使用するか、自分で検索/置換を使用できます。Java6を有効にするには、ソースコード内の文字列/*## Java 1.6 ##をに置き換えます。//## Java 1.6 ##

于 2012-05-11T05:10:18.240 に答える