[JSE6] Compiler à partir d'une String
Salut,
j'essaye de compiler au runtime une classe sous forme de String grâce à l'API compiler du jdk6 et la classe JavaObjectFromString (décrite dans la javadoc)
Code:
1 2 3 4 5 6 7 8 9 10 11
| import java.net.URI;
class JavaObjectFromString extends SimpleJavaFileObject{
private String contents = null;
public JavaObjectFromString(String className, String contents) throws Exception{
super(new URI(className), Kind.SOURCE);
this.contents = contents;
}
public CharSequence getCharContent(boolean ignoreEncodingErrors) throws IOException {
return contents;
}
} |
Mon problème est quand je lance la compilation il me renvoie l'erreur suivante :
Citation:
Envoyé par JavaCompiler
...
MaClasseACompiler:10: class MaClasseACompiler is public, should be declared
in a file named MaClasseACompiler.java
...
Ce qui est comprehensible puisque je le compile à partir d'une chaîne de caractère et non d'un fichier, mais du coup je suis bien embêté :aie: