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

Persistance des données Java Discussion :

.Jar qui lance un .bat(runtime.exec) - commande effective qu'à la fermeture de l'app ?


Sujet :

Persistance des données Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2009
    Messages : 90
    Points : 67
    Points
    67
    Par défaut .Jar qui lance un .bat(runtime.exec) - commande effective qu'à la fermeture de l'app ?
    Bonjour à tous !

    J'ai Windows SEVEN.

    > cmd() est censée lancer une ligne de commande contenant un .bat

    Problème : La ligne de commande n'est effective que lorsque je ferme l'application.

    remarque: je lance mon application à partir d'un Fat jar (un exécutable).

    Code : 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
    void cmd() {
    	final Process process;
    	Runtime runtime = Runtime.getRuntime();
    
    	try {
    	process = runtime.exec("bin\\Config.bat -load:Data.csv -dir:.\\sampleData");		
    			
    	} catch (IOException e) {
    		e.printStackTrace();
    	}
    }
    	
    public static void main(String[] args){
    	
    	JFrame frame = new JFrame();
    	frame.setVisible(true);
    	frame.setBounds(20, 20, 50, 50);
    	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		
    	MainClass mainClass = new MainClass();	
    	mainClass.cmd();
    Merci !
    PS: ne me dites pas d'enlever la fenetre j'en ai besoin

  2. #2
    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
    tu dois consommer ou fermet les flux de sortie de ton application, sinon elle va bloquer en attendant que tu lise ce qu'elle à a dire (et quand tu fermera ton application, ça fermera les flux et donc débloquera l'application en question)


    http://ydisanto.developpez.com/tutor.../runtime/#LIII

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 28
    Points : 30
    Points
    30
    Par défaut
    Pour ce genre d'utilisation, en général je construit un thread. Dans ce thread tu lance ton appel à ton .Jar/.bat.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2009
    Messages : 90
    Points : 67
    Points
    67
    Par défaut
    reBonjour,

    RESOLU !
    Et bien merci pour vos réponse.

    Au fait mon .bat contient un appel à une autre application Java (qui se fait ds la meme JVM donc et je ne le savais pas (gros projet OpenSource) ). Du coup l'app lancée atendait que mon Jar lachait la JVM pour pouvoir s'exécuter dessus.

    ma Solution: externaliser l'appel au nouveau pgm java.

    PS: Sur ce Forum meme si on n'a pas la réponse, on est guidé et on apprend toujours des choses.
    Merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 11/06/2010, 07h57
  2. jar qui lance d'autres jar
    Par lostsoul dans le forum Général Java
    Réponses: 9
    Dernier message: 15/06/2009, 17h04
  3. trigger qui lance un .bat
    Par orafrance dans le forum Développement
    Réponses: 5
    Dernier message: 30/10/2008, 21h36
  4. Script qui lance un telnet avec une commande ?
    Par NicoV dans le forum Windows XP
    Réponses: 0
    Dernier message: 17/12/2007, 17h24
  5. autorun qui lance un bat
    Par chasse dans le forum Windows
    Réponses: 2
    Dernier message: 28/12/2006, 11h24

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