Ici : créer_alias & fonctions_définies_par_l'utilisateur il est écrit :
le compilateur Sun javac est utilisé si le fichier tools.jar se trouve dans le classpath. Sinon, javac est exécuté en tant que processus séparé.
Comment spécifier la version de la classe java pour les fonctions définies par l'utilisateur et les procédures stockées de la base de données H2 - c'est-à-dire les options d'invocation de javac pour le javac externe ? Peut-on toujours forcer le javac externe (même si jdk/tool.jar est trouvé) ?
par exemple, H2 est construit avec java 1.5 ; je fonctionne avec 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
Merci ;
Andrei.