IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Projet fonctionnant sous Windows, mais pas sous linux


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Chou-ette
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2018
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2018
    Messages : 57
    Par défaut Projet fonctionnant sous Windows, mais pas sous linux
    Bonjour bonjour, c'est à nouveau moi pour une grande question concernant Java

    J'ai un petit projet Maven qui utilise une connexion MySQL à un serveur local sur un Ubuntu. En codant, je teste depuis mon PC, tout baigne, sauf que quand je transfère le projet sur le serveur Ubuntu, j'ai droit à une exception "java.sql.SQLException: No suitable driver found for jdbc:mysql://......."

    La ou je suis un peu perdu, c'est que j'ai un autre petit projet juste à côté, même besoin concernant la base de données, et lui il tourne tip top. J'ai littéralement fait un C/C de la ligne "DriverManager.getConnection...." mais rien n'y fait.

    De même pour les pom, je n'ai rien vu qui expliquerait une telle différence, le connecteur MySQL Java est bien dans les modules

    J'ai déjà écumé un peu Google et autres, mais je n'ai rien trouvé qui convienne pour l'instant, c'est pour cela que je fais appel à vous !

    C'est probablement un oublie bête de ma part, mais je n'arrive pas à mettre le doigt dessus

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 585
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 585
    Par défaut
    Hello,

    Citation Envoyé par Chou-ette Voir le message
    C'est probablement un oublie bête de ma part, mais je n'arrive pas à mettre le doigt dessus
    genre l'oubli de montrer les fichiers -_-° ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre éclairé Avatar de Chou-ette
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2018
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2018
    Messages : 57
    Par défaut
    Par exemple en effet.

    En réalité, en écrivant je me suis dit que ce devait être un problème suffisamment commun, erreur de ma part.

    Entre temps j'ai quand même trouvé une solution avec ceci dans mon pom.xml :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
            <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
                <plugins>
                    <!-- clean lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#clean_Lifecycle -->
                    <plugin>
                        <artifactId>maven-clean-plugin</artifactId>
                        <version>3.1.0</version>
                    </plugin>
                    <!-- default lifecycle, jar packaging: see https://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_jar_packaging -->
                    <plugin>
                        <artifactId>maven-resources-plugin</artifactId>
                        <version>3.0.2</version>
                    </plugin>
                    <plugin>
                        <artifactId>maven-compiler-plugin</artifactId>
                        <version>3.8.0</version>
                    </plugin>
                    <plugin>
                        <artifactId>maven-surefire-plugin</artifactId>
                        <version>2.22.1</version>
                    </plugin>
                    <plugin>
                        <artifactId>maven-jar-plugin</artifactId>
                        <version>3.0.2</version>
                        <configuration>
                            <archive>
                                <manifest>
                                    <mainClass>api.retriever.Launcher</mainClass>
                                </manifest>
                            </archive>
                        </configuration>
                    </plugin>
                    <plugin>
                        <artifactId>maven-install-plugin</artifactId>
                        <version>2.5.2</version>
                    </plugin>
                    <plugin>
                        <artifactId>maven-deploy-plugin</artifactId>
                        <version>2.8.2</version>
                    </plugin>
                    <!-- site lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#site_Lifecycle -->
                    <plugin>
                        <artifactId>maven-site-plugin</artifactId>
                        <version>3.7.1</version>
                    </plugin>
                    <plugin>
                        <artifactId>maven-project-info-reports-plugin</artifactId>
                        <version>3.0.0</version>
                    </plugin>
                    <plugin>
                        <artifactId>maven-assembly-plugin</artifactId>
                        <configuration>
                            <archive>
                                <manifest>
                                    <mainClass>api.retriever.Launcher</mainClass>
                                </manifest>
                            </archive>
                            <descriptorRefs>
                                <descriptorRef>jar-with-dependencies</descriptorRef>
                            </descriptorRefs>
                        </configuration>
                    </plugin>
                </plugins>
            </pluginManagement>

    Je crée le .jar avec un mvn clean compile assembly:single

    C'est complètement repris d'un tout autre projet d'une connaissance, mais ça marche. Pour ma curiosité, connaitriez-vous d'autres méthodes plus récentes/utilisées/que sais-je ?

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 585
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 585
    Par défaut
    Ça reste un peu maigre.

    Le seul truc que je peux imaginer, c'est que quand tu utilises pas ce .jar, tu lances ton programme sans l'assistance de Maven, et que sous Windows, pour une quelconque raison, il trouve quand même les jars à utiliser. Genre tu aurais tu aurais sous Windows une variable CLASSPATH qui liste les jars avec leurs emplacements.

    A ma connaissance, la mode est de générer des jar exécutables qui contiennent toutes leurs dépendances, avec spring-boot-maven-plugin (qui ne te force absolument pas à utiliser Spring dans ton projet) avec mvn clean spring-boot:repackage.

    Sinon en principe depuis Java 13, tu pourrais utiliser jpackage-maven-plugin pour générer directement un programme exécutable natif de la plate-forme, qui contient aussi toutes les dépendances. Mais j'ai pas connaissance que ce soit populaire.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Réponses: 0
    Dernier message: 03/11/2017, 14h51
  2. [Lazarus] Curseur en couleur : fonctionne sur Windows mais pas sur Linux
    Par ChPr dans le forum Lazarus
    Réponses: 1
    Dernier message: 26/09/2014, 14h43
  3. Réponses: 3
    Dernier message: 15/05/2009, 09h57
  4. Mon fichier gtkrc fonctionne sous windows mais pas sous Linux !
    Par Kicker dans le forum GTK+ avec C & C++
    Réponses: 2
    Dernier message: 24/04/2009, 12h54
  5. Réponses: 5
    Dernier message: 13/04/2009, 23h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo