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 :

[Débutant] lancer un programme automatiquement


Sujet :

avec Java

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 70
    Points : 54
    Points
    54
    Par défaut [Débutant] lancer un programme automatiquement
    Salut,
    Je ne savais pas trop ou mettre ce poste j’espère qu’il est à la bonne place, si ce n’est pas le cas je m’en excuse d’avance

    J’ai un Windows Server 2003, j’ai fait un programme java avec Eclipse et j’ai envie à la suite de le planifier histoire de lancer le programme chaque soir à 23h par exemple

    En cherchant un peu j’ai vue que je peux par exemple faire un ".jar" à partir de ma class java j’ai également trouvé des tutoriels pour faire un ".exe" à partir de mon jar

    Ma première question est : qu’elle est la différence entre un ".exe" et un ".jar" ? Ensuite une fois j’ai mon ".jar" ou mon ".exe" comment l’utiliser pour automatisé le lancement du programme ?

    Merci d’avance

  2. #2
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Un .exe est un exécutable windows. C'est à dire que le système d'exploitation windows est capable de lancer directement un .exe.

    Par contre, il n'est pas capable de lancer un .jar. Pour lui, ce n'est pas un exécutable.

    Les .jar sont des exécutables pour la machine virtuelle java. Tu ne peux les exécuter que par l'intérmédiaire d'une machine virtuelle.

    Ces machines virtuelles java (java.exe, jre.exe...) sont des exécutables du point de vue du système d'exploitation.

    Je ne sais pas si c'est clair...

    Malheureusement, je ne sais pas comment on fait pour lancer un programme à une heure régulière. Pour ça, il faut, je pense, plutôt te renseigner sur le forum windows, ou attendre que quelqu'un de plus doué que moi te réponde ici.

  3. #3
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Personnellement je te conseillerais d'aller consulter ce tutoriel qui répond à ta demande.

  4. #4
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 70
    Points : 54
    Points
    54
    Par défaut
    Hello

    @ gifffftane tes explications sont très claires
    @Deadpool merci pour le tuto je vais regarder ça de suite

    Cordialement

  5. #5
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 70
    Points : 54
    Points
    54
    Par défaut
    Bonjour,
    J’ai regardé le lien plus haut mais ça ne corresponds pas vraiment à ce que je veux
    Dans un premier temps mon soucis est de faire un exécutable à partir de mon programme java j’ai lu beaucoup de tutaux et parcouru beaucoup de forums j’ai également testé une dizaine de solutions mais sans succès je pense que mon problème vient de mon programme principal !!

    J’ai fait un projet java avec Eclips
    -Nom du projet « Projet1 »
    -Nom du programme « PremierTest.java »
    -Nom de ma classe « PremierTest »
    création classic et standard avec Eclips

    Voici l’arborescence de mon workspace
    Workspace --> Projet1
    -->bin -->PremierTest.class
    -->lib
    -->src-->PremierTest.java
    -->.classpath
    -->.project

    Dans Eclips en faisant un clic droit sur « PremierTest.java » ensuite runAS--> java application ça compile bien et mon programme fonctionne

    Par contre lorsque j’essaie de lancer à distance mon programme ça ne marche pas .Voici les différentes solutions que j’ai testées
    Solution1 :
    Dans l’invite de commande je me mets à l’emplacement suivant : workspace-->Projet1
    Je tape la commande suivante:J’ai une erreur me disant noclassdeffound

    Idem si je me met dans workspace-->Projet1-->src

    Question1 : Suivant mon arborescence comment pourrai-je lancer mon programme java ? ou dois-je me placcer?

    Solution2:
    Lorsque j’essaie de faire un jar à partir d’eclips à la fin de la création de mon jar j’ai le message suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    JAR export finished with warnings. See details for additional information.
      Exported with compile warnings: /Projet1/src/PremierTest.java”
    “Je double click sur le jar et voilà le message que j’obtiens
    Could not find the main class”

    Autre solution
    J’ai tester un outil javaexe théoriquement je dois placer le javaexe.exe dans le même emplacement que ma classe et le renommer MaClass.exe (dans mon cas PremierTest.exe) en lançant l’exécutable voila le message d’erreur
    Class principale introuvable

    Tout ça me mène à penser que mon problème vient de mon projet Eclips! mais encor une fois je suis débutante et si ça se trouve ce n’est même pas ça
    pourquoi est ce que ma class est introuvable?est ce que j'ai louper une etape?

    Merci d’avance pour toute aide

  6. #6
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Attention quand tu lance ton programme il faut faire :

    et surtout pas



    Pour lancer un prog java, il faut se placer dans le dossier parent de la racine des packages.

    Dans ton cas, vu que tu n'as pas de package tu peux te mettre de le dossier ou se trouve la classe (le fichier PremierTest.class) et lancer la commande java PremierTest.


    Pour exporter en jar çà partir d'Eclipse, il faut spécifier le nom de la classe à lancer lors du double click, ça se fait quelquepart dans l'assistant (champ Main-Class).

  7. #7
    Membre habitué
    Profil pro
    Devops
    Inscrit en
    Août 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Devops

    Informations forums :
    Inscription : Août 2006
    Messages : 107
    Points : 139
    Points
    139
    Par défaut
    Quand tu utilises l'exportation .jar d'Eclipse, il faut préciser la class contenant la méthodes main(). Dans la troisième page en bas (Main class)

    Ensuite pour executer le .jar il faut faire :
    java -jar <TON_JAR>.jar

    Donc tu peux très bien faire ça dans un petit script .bat a coté.

    Juste pour me rafraichir la mémoire : Windows ne gére pas les .jar quand tu double clique dessus ?

  8. #8
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Citation Envoyé par Iyoiyo Voir le message
    Juste pour me rafraichir la mémoire : Windows ne gére pas les .jar quand tu double clique dessus ?
    Il est sensé le faire, si l'association est bien faite.

  9. #9
    Membre habitué

    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 36
    Points : 129
    Points
    129
    Par défaut
    Concernant ta première tentative de lancer le programme, ce qu'il faut comprendre, c'est que PremierTest.java est le fichier source, celui dans lequel tu as tapé ton code. Dans sa configuration par défaut, Eclipse le "compile" automatiquement à chaque modification en un fichier .class du même nom. Ici PremierTest.class. C'est ce fichier qui contient le code compréhensible et exécutable par la machine virtuelle Java.

    Pour lancer ton programme à la main, il ne faut donc pas taper
    mais
    Java va alors chercher un fichier .class de ce nom et le lancer. Il faut pour cela que tu te place dans le répertoire bin, qui contient les .class.

    Concernant la génération de .jar par Eclipse, il faut préciser à l'assistant la classe qui comprend la méthode main. Ce doit être à la dernière page de l'assistant je pense.

    Cordialement


    <edit>
    j'ai été trop lent...
    </edit>

  10. #10
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 70
    Points : 54
    Points
    54
    Par défaut
    Merci pour votre aide

    Lorsque j’ai fait mon jar j’ai bien précisé la classe dans la quel j’ai mon main
    J’ai refait un jar au cas ou mais j’ai toujours le même souci !!

    Voilà ce que j’obtiens lorsque je fait
    java PremierTest
    Exception in thread main java.lang UnsuportedClassVerssionError
    At Java.lang.Classloader.defineclasse0 <native method>
    At Java.lang.Classloader.defineclasse0 <Unknown source>
    At Java.security.Classloader.defineclasse0 <Unknown source>
    At Java.url.Classloader.defineclasse0 <Unknown source>


    ……etc
    Idem lorsque je fais java –jar Monjar.jar
    pourtant dans Eclips ça compile sans erreur : est ce normal?

  11. #11
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Citation Envoyé par NedaRyme Voir le message
    Merci pour votre aide

    Lorsque j’ai fait mon jar j’ai bien précisé la classe dans la quel j’ai mon main
    J’ai refait un jar au cas ou mais j’ai toujours le même souci !!

    Voilà ce que j’obtiens lorsque je fait


    Idem lorsque je fais java –jar Monjar.jar
    pourtant dans Eclips ça compile sans erreur : est ce normal?
    Il semblerait que ce ne soit pas la même version de Java qui est utilisée dans Eclipse et celle qui est configurée dans Windows.

    Quel est le compiler compliance level dans Eclipse?
    Pour le savoir, clique avec le bouton droit sur la racine de ton projet et sélectionne Properties. Puis sélectionne le noeud Java compiler dans la boîte de dialogue qui apparait.


    Et quand tu tapes java -version dans la console tu obtiens quoi?

  12. #12
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 70
    Points : 54
    Points
    54
    Par défaut
    Voilà j'ai vérifier

    dans eclips java compiler 6.0 , et quand je fait java –version j’obtiens 1.3.1_01

  13. #13
    Membre habitué
    Profil pro
    Devops
    Inscrit en
    Août 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Devops

    Informations forums :
    Inscription : Août 2006
    Messages : 107
    Points : 139
    Points
    139
    Par défaut
    Citation Envoyé par NedaRyme Voir le message
    Voilà j'ai vérifier

    dans eclipse java compiler 6.0 , et quand je fait java –version j’obtiens 1.3.1_01
    Le problème vient donc de la. Il faut que tu configures la variable d'environnement JAVA_HOME que tu devrais trouvé dans la configuration du Systeme sous Windows.

    Pour tester, utilise la command Java qui se trouve dans "Program Files/Java/jre1.6.0_xx/bin" pour executer ton .jar

    La methode brute étant de reinstaller une jre6.0 qui devrai reconfigurer le JAVA_HOME. MAIS FAIT ATTENTION ! Si tu as une jre1.3 d'active, c'est que tu dois avoir quelque part un logiciel qui nécessite cette version !

    Il y a une autre solution en modifiant la base de registre mais je la garde pour plus tard

  14. #14
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 70
    Points : 54
    Points
    54
    Par défaut
    Comment modifier la variable JAVA_HOME est il possible d’être plus précis stp ?

    Comment fonctionne les versions ? si j’ai un Eclips avec compiler 6.0 il me faut une jre 1.6.0.x ? c’est bien ça ?

  15. #15
    Membre habitué
    Profil pro
    Devops
    Inscrit en
    Août 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Devops

    Informations forums :
    Inscription : Août 2006
    Messages : 107
    Points : 139
    Points
    139
    Par défaut
    Citation Envoyé par NedaRyme Voir le message
    Comment modifier la variable JAVA_HOME est il possible d’être plus précis stp ?

    Comment fonctionne les versions ? si j’ai un Eclips avec compiler 6.0 il me faut une jre 1.6.0.x ? c’est bien ça ?
    C'est pas que je veux point, mais je peux point... Ca fait trop longtemps que je suis sous Linux et MAC pour me rappeler précisément comment ça marche sous Windows. Désolé, mais je crois qu'un bon Google te serai d'un meilleur secours, c'est assez classique comme problèmatique.

  16. #16
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Citation Envoyé par NedaRyme Voir le message
    Comment modifier la variable JAVA_HOME est il possible d’être plus précis stp ?

    Comment fonctionne les versions ? si j’ai un Eclips avec compiler 6.0 il me faut une jre 1.6.0.x ? c’est bien ça ?
    Pour changer JAVA_HOME, clic droit sur Poste de travail, tu vas dans l'onglet Avancé puis tu cliques sur le bouton Variable d'environnement.

    Là tu cherche la variable JAVA_HOME dans les variables système et tu l'édite pour mettre le chemin du répertoire bin du dossier d'installation de Java 6.

  17. #17
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 70
    Points : 54
    Points
    54
    Par défaut
    J’ai vérifié et je n’ai pas de variable java_home est ce normale ?je vais l’ajouter à la main mais avant j’attends confirmation svp je ne veux surtout pas faire pété mon pc

  18. #18
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Vérifie plutôt le contenu de la variable PATH en fait.

    Il doit y avoir le chemin de la jvm utilisé dedans dans la liste. Change ce chemin pour celui de la jvm 6.

  19. #19
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 70
    Points : 54
    Points
    54
    Par défaut
    Voila ce que j’ai trouvé
    Variable PATH
    Valeur
    D:\oracle\ora92\bin;C:\Program Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem
    C’est Oracle qui utilise jre 1.3.1

  20. #20
    Membre habitué
    Profil pro
    Devops
    Inscrit en
    Août 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Devops

    Informations forums :
    Inscription : Août 2006
    Messages : 107
    Points : 139
    Points
    139
    Par défaut
    Citation Envoyé par NedaRyme Voir le message
    Voila ce que j’ai trouvé
    Variable PATH
    Valeur

    C’est Oracle qui utilise jre 1.3.1
    La c'est pas cool. Il faut utiliser le chemin complet vers la JVM6. As-tu essayer déjà ton programme dans le cli DOS avec le chemin donné précédant ?

Discussions similaires

  1. Lancer un programme automatiquement à l'affichage du bureau
    Par Jipété dans le forum Applications et environnements graphiques
    Réponses: 6
    Dernier message: 22/05/2013, 12h32
  2. lancer un programme automatiquement
    Par wauant dans le forum Debian
    Réponses: 4
    Dernier message: 18/06/2007, 10h32
  3. [2.0] Lancer un programme automatiquement chaque jour
    Par Oberown dans le forum Framework .NET
    Réponses: 2
    Dernier message: 07/02/2007, 02h12
  4. débutant->lancer un programme java?
    Par ataya dans le forum Débuter avec Java
    Réponses: 15
    Dernier message: 15/11/2006, 10h42
  5. [Débutant] Lancer un programme à partir de perl
    Par Nemmo dans le forum Langage
    Réponses: 5
    Dernier message: 03/06/2006, 14h52

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