4

ここに: create_alias & user_defined_functions書かれています:

ファイル tools.jar がクラスパスにある場合、Sun javac is コンパイラが使用されます。そうでない場合、javac は別のプロセスとして実行されます。

H2 データベースのユーザー定義関数とストアド プロシージャの Java クラス バージョンを指定するにはどうすればよいですか。つまり、外部 javac の javac 呼び出しオプションですか? 常に外部 javac を強制できますか (jdk/tool.jar が見つかった場合でも)?

たとえば、H2 は Java 1.5 に対してビルドされています。私はJava 1.7で実行しています:

org.apache.ibatis.exceptions.PersistenceException: 
### Error updating database.  Cause: org.h2.jdbc.JdbcSQLException: 
General error: 
"java.lang.UnsupportedClassVersionError: org/h2/dynamic/NEXT_PRIME : 
Unsupported major.minor version 51.0"; SQL statement:
CREATE ALIAS NEXT_PRIME AS $$
        String nextPrime(String value) {
            return new BigInteger(value).nextProbablePrime().toString();
        }
    $$; [50000-167]
    at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
    at org.h2.message.DbException.get(DbException.java:158)
    at org.h2.message.DbException.convert(DbException.java:277)
    at org.h2.command.Command.executeUpdate(Command.java:234)
    at org.h2.server.TcpServerThread.process(TcpServerThread.java:328)
    at org.h2.server.TcpServerThread.run(TcpServerThread.java:149)
    at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.UnsupportedClassVersionError: org/h2/dynamic/NEXT_PRIME : 
Unsupported major.minor version 51.0

ありがとう;

アンドレイ。

4

1 に答える 1

1

エラー メッセージ"Unsupported major.minor version 51.0"は、システムに JDK または JRE 1.6 が使用されている場合があることを示しています。質問unsupported-major-minor-version-51-0も参照してください。

于 2012-07-12T14:10:06.270 に答える