Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2880 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [Java][RESOLU] Compilation en cours d'execution

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Java][RESOLU] Compilation en cours d'execution

n°308162
lorill
Posté le 13-02-2003 à 10:24:09  profilanswer
 

Le titre est pas très clair, mais je vais essayer d'expliquer mon probleme. Je suis sur un programme (en java) qui doit génerer du code en java aussi. Jusque la, tout va bien. Seulement, j'ai besoin de pouvoir utiliser le code géneré dans la suite de la génération.
 
Charger un classe, l'instancier, pas de probleme. Mais pour cela, il me faut le byte code. Alors évidement, je pourrais lancer un processus externe pour compiler, mais c'est pas très beau.
 
J'ai un peu regardé l'api de jasper (utilisé par tomcat pour compiler les jsp), mais bon... Ils se basent forcément sur quelque chose d'existant  [:sinclaire]  
 
une piste, quelqu'un ?


Message édité par lorill le 14-02-2003 à 11:24:42
mood
Publicité
Posté le 13-02-2003 à 10:24:09  profilanswer
 

n°308172
lorill
Posté le 13-02-2003 à 10:52:29  profilanswer
 

bon, apres avoir maté les sources de jasper, ils utilisent ant.
j'ai pas envie, moi :o

n°308173
kadreg
profil: Utilisateur
Posté le 13-02-2003 à 10:53:01  profilanswer
 

java.lang.Compiler ?


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°308175
lorill
Posté le 13-02-2003 à 10:56:38  profilanswer
 

rho ben oui tiens...
le probleme de machins de ce genre c'est que quand on dégaine google il sort tous les messages de mecs qui savent pas compiler, mais ca faut le connaitre pour le trouver.
 
je vais voir si ca marche

n°308178
lorill
Posté le 13-02-2003 à 11:08:05  profilanswer
 

ah ben non, c'est pas ca du tout.
 

Citation :


The Compiler class is provided to support Java-to-native-code compilers and related services. By design, the Compiler class does nothing; it serves as a placeholder for a JIT compiler implementation.
 
When the Java Virtual Machine first starts, it determines if the system property java.compiler exists. (System properties are accessible through getProperty and , a method defined by the System class.) If so, it is assumed to be the name of a library (with a platform-dependent exact location and type); the loadLibrary method in class System is called to load that library. If this loading succeeds, the function named java_lang_Compiler_start() in that library is called.
 
If no compiler is available, these methods do nothing.  

n°308180
kadreg
profil: Utilisateur
Posté le 13-02-2003 à 11:09:18  profilanswer
 

lorill a écrit :

bon, apres avoir maté les sources de jasper, ils utilisent ant.


 
Et avec ant, comment ils font pour traiter un tag <javac> ?


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°308182
lorill
Posté le 13-02-2003 à 11:10:03  profilanswer
 

kadreg a écrit :


Et avec ant, comment ils font pour traiter un tag <javac> ?


j'ai pas encore eu le courage de regarder  :whistle:

n°308184
benou
Posté le 13-02-2003 à 11:12:40  profilanswer
 

j'ai lu un truc y a pas longtemps la dessus ... je reviens !

n°308189
benou
Posté le 13-02-2003 à 11:15:22  profilanswer
 
n°308190
lorill
Posté le 13-02-2003 à 11:17:42  profilanswer
 

merci, je vais voir

mood
Publicité
Posté le 13-02-2003 à 11:17:42  profilanswer
 

n°308217
darklord
You're welcome
Posté le 13-02-2003 à 11:43:28  profilanswer
 

ant c'est bien :o  
 
 [:tapai]


---------------
Just because you feel good does not make you right
n°308218
kadreg
profil: Utilisateur
Posté le 13-02-2003 à 11:44:29  profilanswer
 

DarkLord a écrit :

ant c'est bien :o  


 
antp, c'est mieux


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°308299
BifaceMcLe​OD
The HighGlandeur
Posté le 13-02-2003 à 12:42:30  profilanswer
 

kadreg a écrit :


 
Et avec ant, comment ils font pour traiter un tag <javac> ?


Ils font comme ils disent dans le JavaTip 131 : ils exécutent com.sun.tools.javac.Main.compile(). Mais évidemment, c'est non documenté par Sun...

n°308341
lorill
Posté le 13-02-2003 à 13:23:29  profilanswer
 

bon, j'ai l'impression que le -sourcepath est pas pris en compte :heink:
 
en ligne de commande non plus d'ailleurs

n°309128
darklord
You're welcome
Posté le 14-02-2003 à 10:37:25  profilanswer
 

lorill a écrit :

bon, j'ai l'impression que le -sourcepath est pas pris en compte :heink:
 
en ligne de commande non plus d'ailleurs


 
dans ant tu veux dire?


---------------
Just because you feel good does not make you right
n°309131
lorill
Posté le 14-02-2003 à 10:41:09  profilanswer
 

DarkLord a écrit :


dans ant tu veux dire?


non, dans com.sun.tools.javac.Main
mais en fait j'ai contourné mon probleme, ca rox maintenant

n°309137
benou
Posté le 14-02-2003 à 11:00:27  profilanswer
 

javaworld c'est quand même vachement bien !

n°309156
western
AJMM
Posté le 14-02-2003 à 11:26:07  profilanswer
 

lorill a écrit :


non, dans com.sun.tools.javac.Main
mais en fait j'ai contourné mon probleme, ca rox maintenant


Et tu as fait quoi (et comment)?
Ps c'est pour mourir moins idiot ...

n°309159
lorill
Posté le 14-02-2003 à 11:29:03  profilanswer
 

western a écrit :


Et tu as fait quoi (et comment)?
Ps c'est pour mourir moins idiot ...


ben tout comme dans l'article de benou.
 

Code :
  1. public int compile(String classpath, String sourcepath)
  2.     {
  3.         com.sun.tools.javac.Main javac = new com.sun.tools.javac.Main();
  4.         String [] args = {
  5.             "-d", sourcepath,
  6.             "-classpath", classpath,
  7.             sourcepath + this.screen.getName() + "Screen.java"
  8.         };
  9.        
  10.         return javac.compile(args);       
  11.     }

n°309233
western
AJMM
Posté le 14-02-2003 à 12:38:32  profilanswer
 

Ok, merci (j'ai juste survolé l'article)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [Java][RESOLU] Compilation en cours d'execution

 

Sujets relatifs
[Java] parser, éditeur,.. des idées ?[.NET] Enumérations (problème résolu)
java -jar ne prends pas le classpath en compte? :heink:[php] Execution d'un script en standalone: passer une variable?
[RESOLU - ie sux (harko aussi)][applet] ie et sa jvm de base[Access] Execution d'une requete a l'aide d'un macro
[Javascript] Petit problème de redirection { résolu }Java inutilisable sur Solaris ?
Image et texte dans une cellule: placement impossible... [resolu][JAVA] Vulnérabilité potentielle ?
Plus de sujets relatifs à : [Java][RESOLU] Compilation en cours d'execution


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR