J'ai un simple fichier .txt qui a un code Java pur à l'intérieur, comme le fichier est nommé c.txt. Maintenant, je veux écrire du code Java qui lira le code de C.txt et compilera et exécutera et exécutera le code de lecture sous forme de fichier Java pur. Remarque, je peux facilement renommer C.txt à C.Java et compiler et exécuter le code manuellement. Cependant, ce n'est pas mon intention. Je veux lire le fichier .txt tel quel et exécuter le code directement. Est-ce possible en quelque sorte? P> p>
3 Réponses :
Consultez ce fil pour savoir comment démarrer la compile depuis Java ... p>
Comment définir la source Pour la compilation par un calculateur de compilation p>
Merci pour vos réponses. J'ai compris que nous pouvons compiler et fichiers. Mais je voudrais aussi exécuter les fichiers .Class compilés. Comment faire ?
Vous pouvez utiliser le forme Javax.Tools forme API Java 6 pour compiler le code à la volée. Cependant, étant donné que votre extension est illégale, elle se plaindre avec une erreur Pour contourner cela (comme mentionné dans les commentaires), vous devez d'abord charger le code dans une chaîne, puis l'exécuter: p> remarque comment vous devez fournir explicitement la méthode
Le javacompiler code> peut i> compiler source dans une chaîne code> code>. Il existe un exemple dans les Javadocs utilisant JavaSourceFromstring code>. Je l'utilise dans STBC .
Je pense que je commencerais avec Beanshell , qui vous permet de compiler et d'exécuter Java Source tenue dans une chaîne. p>
Ecrire un script shell fonctionne-t-il pour vous? Ce serait un bon peu plus facile que d'essayer de mettre en œuvre cela en Java.