[JAVA] Compilation à la ligne de commande

Compilation à la ligne de commande [JAVA] - Programmation

Marsh Posté le 02-07-2001 à 16:45:22    

Voilà, donc je compile mon appli, ça tourne... Puis je lance une des fonctionnalités de l'appli et là ! Pouf ! Exception... Mais y a tellement de lignes de partout, que je ne peux pas savoir d'où l'exception vient réellement. Comment faire pour avoir accès aux trucs qui ont été écrit ? Redirection ?
 
Ah ! Au fait, je suis sous DOS.


---------------
Le site de ma maman
Reply

Marsh Posté le 02-07-2001 à 16:45:22   

Reply

Marsh Posté le 02-07-2001 à 16:49:21    

Effectivement, le plus simple est de rediriger la sortie DOS vers un fichier.
 

Code :
  1. java MaClasse > log.txt


 
A++

Reply

Marsh Posté le 02-07-2001 à 16:49:42    

Cherrytree a écrit a écrit :

 
Ah ! Au fait, je suis sous DOS.  




 
Pas possible, java tourne pas sous Dos. Tu est sous windows 98/2000 ou NT4 ?
 
Pour windows 98  
java monPack.maClass | more
 
Pour les autres windows tu clic droit sur le titre de la fenetre, Propriete, disposition, et tu augmente le nombre de ligne de la zone tampon (moi, je suis a 1000).


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 03-07-2001 à 11:17:55    

Très juste, je suis sous Windows 98 :D :D Mais l'habitude, on ne change pas des années d'utilisation de DOS...
 
Pour la redirection du type "java MaClasse > log.txt", ça ne marche pas car c'est pas au lancement que ça chie, mais au cours de l'utilisation normale du soft. Résultat, y a rien dans le log.
 
J'essaie le coup du pipe, et je rappelle.
Merci !


---------------
Le site de ma maman
Reply

Marsh Posté le 03-07-2001 à 13:03:02    

Cherrytree a écrit a écrit :

Très juste, je suis sous Windows 98 :D :D Mais l'habitude, on ne change pas des années d'utilisation de DOS...
 
Pour la redirection du type "java MaClasse > log.txt", ça ne marche pas car c'est pas au lancement que ça chie, mais au cours de l'utilisation normale du soft. Résultat, y a rien dans le log.
 
J'essaie le coup du pipe, et je rappelle.
Merci !  




 
Le pb c'est que les erreurs sortent sur stderr (si je puis me permettre) or sous DOS je ne sais pas si c'est possible de rediriger la sortie d'erreur ... Guru ???


---------------
- "Qui diable es-tu ?"
Reply

Marsh Posté le 03-07-2001 à 13:47:41    

Bon, maintenant j'arrive à lire l'erreur, j'ai augmenté le nombre de ligne qu'il est possible de lire, c'est OK.
 
Cependant, le problème mis en lumière par l'affichage ne me plait pas : j'ai un truc du style. Class not found at com/sun/xml/tree/xmlDocumentOr, j'ai vérifié, le composant jar contient le fichier class incriminé, et il est normalement placé dans le répertoire du JDK, sous jre/lib/ext.
 
Est-ce que qqn a une idée ? Je précise que ça marchait bien sous Forte.


---------------
Le site de ma maman
Reply

Marsh Posté le 03-07-2001 à 13:48:39    

Zop > Quand tu n'es pas hors propos, tu peux toujours te permettre :) :) ;)


---------------
Le site de ma maman
Reply

Marsh Posté le 03-07-2001 à 14:36:58    

Cherrytree a écrit a écrit :

Bon, maintenant j'arrive à lire l'erreur, j'ai augmenté le nombre de ligne qu'il est possible de lire, c'est OK.
 
Cependant, le problème mis en lumière par l'affichage ne me plait pas : j'ai un truc du style. Class not found at com/sun/xml/tree/xmlDocumentOr, j'ai vérifié, le composant jar contient le fichier class incriminé, et il est normalement placé dans le répertoire du JDK, sous jre/lib/ext.
 
Est-ce que qqn a une idée ? Je précise que ça marchait bien sous Forte.  




Comment fais tu l'appel à cette classe dans ton code?


---------------
A la limite du bon goût sans jamais y tomber
Reply

Marsh Posté le 05-07-2001 à 10:58:30    

Voilà, voilà, j'imagine que c'est ça que tu veux :

String xmlDocumentPath = inputFile.getPath();
  FileInputStream inStream;
  try {
   inStream = new FileInputStream(xmlDocumentPath);
   document = XmlDocument.createXmlDocument(inStream, true);
  }
  catch(Exception e) {
   System.out.println("createMyDocument: " + e);
   System.exit(0);
  }

Mais bon, si c'est pas ça tu le dis.
 
Sinon, dans le même fichier, je fais un :
import com.sun.xml.tree.*;
import org.w3c.dom.*;

 
Sous Forte ça compile et ça s'exécute. Alors pourquoi pas à la ligne de commande ?

Reply

Marsh Posté le 06-07-2001 à 16:31:45    

T'as pas un débugger ?? Archaïque les println dans la sortie standard !!

Reply

Marsh Posté le 06-07-2001 à 16:31:45   

Reply

Marsh Posté le 07-07-2001 à 00:07:58    

L'archive jar est-elle dans le classpath ?  :spookie:

Reply

Marsh Posté le 16-07-2001 à 17:40:19    

Ben, l'usage d'un debugger, et d'une je sais pas faire (désolé) et de deux, le debugger est intégré à Forte, or sous Forte, ça marche impec ! Donc ça ne m'aidera pas à trouver. Enfin merci pour la suggestion.
 
Pour le classpath, je crois bien que tout est réglé convenablement. Non, y a pas à dire, je vois pas la boulette...


---------------
Le site de ma maman
Reply

Marsh Posté le 16-07-2001 à 18:38:57    

Bon juste au cas ou : (ne négligeons aucune piste :D)
Faut que tu fasses gaffe à ce que ton classpath contienne le chemin vers l'archive jar elle même et non vers le répertoire qui la contient, par exemple c:\truc\machin.jar enfin tu vois quoi...
A moins que ça soit un jar standard du jdk alors là je vois pas...

Reply

Marsh Posté le 16-07-2001 à 22:59:29    

Effectivement, ça pue l'arnaque au classpath fantôme, ton truc, là...Le plus simple, c'est de mettre ton jar das le classpath global (dans autoexec.bat, tu ajoutes c:\...\toto.jar dans la ligne qui définit le classpath. Si elle y est pas, li faut l'ajouter, mais je me rapelle plus de la syntaxe sous dos (ça doit être un truc du genre set classpath=%classpath%;c:\...\toto.jar, ou un truc comme ça, le plus douteux étant les %)
 
Et pour le distribuer, ben tu fait un .bat, avec le set classpath=... avant l'appel à java..

Reply

Marsh Posté le 17-07-2001 à 09:23:49    

j'arrive un peu tard mais pour rediriger stderr tu fais
java MaClasse 2> log.txt

Reply

Marsh Posté le 20-07-2001 à 13:57:43    

Merci beaucoup pour tout, j'ai pas trop le temps de tester en ce moment, car je suis passé de mon projet JAVA à un truc avec Photoshop (rien de terrible, mais ça prend du temps). Pour le coup du > log.txt, ça marcherai si le logiciel plantait au lancement, or c'est durant l'exécution d'une de ses fonctionnalités (déclenchée par l'user) que ça foire. J'avais testé mais ça marchait pas. Pour le classpath, je vérifierai, mais je suis quasi sûr qu'il était bon. Je prie que ce soit ça.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed