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 :

Relancer un programme java


Sujet :

avec Java

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 23
    Points : 19
    Points
    19
    Par défaut Relancer un programme java
    comment je peux relancer le programme java apres avoir le terminer (en utilisant System.exit()) ?

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mexique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 328
    Points : 459
    Points
    459
    Par défaut
    Salut,

    Tout dépend de la façon dont il a été lancé la première fois.
    Il faudrait que tu nous en dises plus.

    Cordialement,

    Dan

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 23
    Points : 19
    Points
    19
    Par défaut
    mon programe run sous eclipse,je l'ai demarré en cliquant sur le bouton "run" du eclipse.je veux que à un certain moment s'arrete,en utilisant system.exit ensuite je veux qu'il se relance de nouveau(en utilisant instruction qui se trouve apres le system.exit()) par exemple:
    public class test {
    int t=1;
    public test()
    {
    if( t==1)
    System.exit(1);
    .......//here I want to run this class :test.java,after stopping it at the previous line
    }

    public static void main(String [] args)
    {
    test test1=new test();
    }
    }

  4. #4
    Membre émérite
    Avatar de polymorphisme
    Homme Profil pro
    Publishing
    Inscrit en
    Octobre 2009
    Messages
    1 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Publishing
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 1 460
    Points : 2 371
    Points
    2 371
    Par défaut
    Bonjour,

    je ne vois pas l'intérêt de faire cela, si tu pouvais nous en dire plus

    Autrement, tu as une classe Lanceur dans le tutoriel suivant :
    http://baptiste-wicht.developpez.com...l/java/update/
    Article : Installation de Cocoon
    Je ne réponds pas aux MP à caractère technique.

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mexique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 328
    Points : 459
    Points
    459
    Par défaut
    Re,

    Quand System.exit(1) est exécutée, c'est terminé, le programme est fermé et on ne peut donc plus rien faire...

    Il faudrait par exemple lancer le programme test (que tu aurais dû nommer Test() ) depuis la méthode main(...) d'une classe externe (un lanceur) mais aussi supprimer System.exit(1) car même le lanceur serait fermé.
    Ajoute aussi un println dans la méthode test() par exemple System.out.println("FIN"); ce qui te permettra de voir que Test est bien relancé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Test objet = new Test();
             objet.test();
    Et ce serait après cette ligne que tu pourais relancer Test() comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    objet.test();
    // peut-être après avoir posé la question "Voulez-vous relancer le programme?"
    La methode main de la classe Test peut être supprimée puisqu'on lance depuis une classe externe.

    Cordialement,

    Dan

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2016
    Messages : 1
    Points : 0
    Points
    0
    Par défaut
    Bonjour,

    Pour relancer un programme java, il est possible d'utiliser les labels (comme dans les langages d'assemblage):

    ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public static void main(String[] args)
    {
          Label: do {
                  ....Votre programme....
                  if (condition) continue Label //Le continue permet de relancer le label
                  else break Label //Stoppe le label et termine le programme
          } while (true);
    }

  7. #7
    Membre expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Points : 3 675
    Points
    3 675
    Par défaut
    Citation Envoyé par yermangderrff Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public static void main(String[] args)
    {
          Label: do {
                  ....Votre programme....
                  if (condition) continue Label //Le continue permet de relancer le label
                  else break Label //Stoppe le label et termine le programme
          } while (true);
    }
    c'est non seulement très moche, (les breaks/continue avec label sont absolument à proscrire... on peut faire 10x mieux sans nécessiter de breaks) mais ne remplit pas le besoin: le process courant n'est pas tué/relancé, la mémoire n'est pas réinitialisée, etc.
    "Le plug gros problème des citations trouvées sur internet, c'est qu'on ne peut jamais garantir leur authenticité"

    Confucius, 448 av. J-C

  8. #8
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par yermangderrff Voir le message
    Bonjour,

    Pour relancer un programme java, il est possible d'utiliser les labels (comme dans les langages d'assemblage):
    N'importe quoi!

  9. #9
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2011
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2011
    Messages : 754
    Points : 376
    Points
    376
    Par défaut
    Surtout que pour déterrer un topic de 6 ans voilà quoi xD

    Sinon, moi j'ai plutôt l'impression que ce que voulait faire le gars c'était plus une pause qu'un arrêt.

    Quelque chose de ce style là aurait fait l'affaire je pense


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    do{
     
    try {
    		//pause de 1 seconde dans l'exe
    		    Thread.sleep(1000);   
    		}catch(InterruptedException ex) {
    		    Thread.currentThread().interrupt();
    		}
     
    }while(!conditionPourReprendre)
    Autrement je vois pas comment on peut arrêter le programme et le relancer sans utiliser un autre programme externe.

  10. #10
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    J'avais même pas vu le déterrage

Discussions similaires

  1. [Avis] Les meilleurs programmes Java ?
    Par christopheJ dans le forum ImageJ
    Réponses: 69
    Dernier message: 07/10/2008, 01h12
  2. [Apis]parser les arguments d'un programme Java
    Par sacofan dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 06/08/2005, 14h32
  3. [LG]Relancer le programme et chemin d'acces
    Par Niko92 dans le forum Langage
    Réponses: 2
    Dernier message: 16/12/2004, 11h56
  4. [votre avis m'interesse] Interface avec un programme Java
    Par LineLe dans le forum Interfaces Graphiques en Java
    Réponses: 29
    Dernier message: 11/12/2004, 11h39
  5. Lancement d'un programme java depuis un script php
    Par gexti dans le forum Développement Web en Java
    Réponses: 8
    Dernier message: 07/05/2004, 17h40

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