Erreur lien java avec access

Résolu
aaa2017 - 17 mai 2024 à 13:55
 aaa2017 - 19 mai 2024 à 21:45

Bonjour,

un message d'erreur que j'ai eu quand j'exécute :

"Exception in thread "main" java.lang.UnsupportedClassVersionError: net/ucanaccess/jdbc/UcanaccessDriver : Unsupported major.minor version 52.0" 


Windows / Chrome 125.0.0.0

A voir également:

5 réponses

KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 018
17 mai 2024 à 17:20

Bonjour,

Tu utilises un driver compilé en Java 8 (version 52) dans un programme Java qui s'exécute dans une version antérieure (Java 7 ou moins)

Tu dois donc soit utiliser un driver plus ancien, soit exécuter ton programme en Java 8 ou plus.

Pour info, la dernière version est Java 22.


0

Rebonjour,

oui, j'utilise java 7,

je veux utiliser un driver plus ancien mais j'ai pas trouvé,

ou je le trouve?

                          merci pour les informations

0
KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 018
17 mai 2024 à 20:45

D'après la documentation, Java 8 est requis à partir de UCanAccess 5, pour toutes les versions antérieures, Java 6 suffit.

Donc UCanAccess 4 devrait être compatible Java 7, tu peux le télécharger ici : https://sourceforge.net/projects/ucanaccess/files/archive/v4_archive/

0

Bonsoir,

j'ai travaillé avec "UCanAccess-4.0.2-bin", c bon il a trouvé le driver mais je reçois cette résultât:

"The UCANACCESS_HOME system variable isn't defined:
 it should be:
-DUCANACCESS_HOME=<your path to the UCanAccess-3.x.x-bin folder>
"

sachant que je travaille avec une machine virtuelle en utilisant le 

"NetBeans IDE 7.2.1" et Microsoft office n'est pas installé à la machine virtuelle.

                              merci

0
KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 018
18 mai 2024 à 12:47

L'erreur est très explicite.

Il faut que tu crées une variable d'environnement UCANACCESS_HOME dont la valeur est le chemin d'accès au répertoire du driver téléchargé.

0

Bonjour,

Jai essayé et ca na pas marché,

je t envoi le programme

même j'ai essayé d'autres chemins, parmi eux celui ci

String url ="jdbc:ucanaccess://C://Inventaire.accdb";

et je reçois le message :

run:
The UCANACCESS_HOME system variable isn't defined:
 it should be:
-DUCANACCESS_HOME=<your path to the UCanAccess-3.x.x-bin folder> 
BUILD SUCCESSFUL (total time: 0 seconds)

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package appinventaire;

/**
 *
 * @author CACI
 */
import java.sql.*;
public class Appinventaire {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        try{
            //chargement du driver
            Class.forName("net.ucanaccess.jdbc.UcanloadDriver");
            String url ="jdbc:ucanaccess:///C/Users/CACI/Desktop/VBOXSVRInventaire/Inventaire.accdb";
            String user ="admin";
            String password="";
           
            //Connexion avec la base de données
           Connection cx = DriverManager.getConnection(url, user, password);
           
           //Création d'une requête
           Statement smt = cx.createStatement();
         
           //Exécution de la requête
           String sql = "SELECT * FROM Table Panne";
           ResultSet res = smt.executeQuery(sql);
           
           //Exploitation du résultat
           while (res.next()) {
               System.out.println(res.getString("Num Panne")+"-"+
                                  res.getString("Num bureau")+"-"+
                                  res.getString("Pannes")+"-"+
                                  res.getString("Remarques"));
               
               //fermeture des objets   
               res.close();
               smt.close();
               cx.close();
           }
        } catch(Exception ex){
            System.out.println(ex.getMessage());
        }
    }
    }
0
KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 018
19 mai 2024 à 09:57

Ce n'est pas un problème de code Java, mais de configuration de ton système Windows.

Il faut créer une variable d'environnement UCANACCESS_HOME pour définir où est installé ton driver, c'est à dire le dossier issu de la décompression du zip téléchargé.

La procédure exacte dépend de la version Windows mais en gros ça se passe dans le panneau de configuration Windows.

0
KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 018
19 mai 2024 à 10:01

Remarque :

Dans le code ton url "jdbc:ucanaccess:///C/Users" est a priori fausse, tu devrais avoir quelque chose comme "jdbc:ucanaccess://C:/Users"

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question

BONSOIR,

Merci beaucoup pour ces informations. 

0