4 votes

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 ?

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.

1voto

Thomas Mueller Points 18666

Le message d'erreur "Unsupported major.minor version 51.0" indique que vous avez un JDK ou un JRE 1.6 dans votre système qui est utilisé dans certains cas. Voir aussi la question version-majeur-mineur non prise en charge-51-0 .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X