This question already has an answer here:
- Convert String to Code 18 answers
- How to compile .java file from within java program [duplicate] 3 answers
Is there a way to run a string as code? I mean if I had a string run having value System.out.println("Hello World)
could I run the string as normal code the then output will be Hello World?
For Example:
String code = "System.out.println("Hello World)";
code.run(); //I know this doesn't work
Console:
Hello World
You want the equivalent of JavaScript's
eval
. There is no equivalent in Java.Well, there is but it's not trivial.
You can generate the full source code of a class containing that code. Something like
And then programatically invoke the compiler, as described in this answer, or as stated in the comments: How to compile .java file from within java program
Not a simple task. Perhaps there's a way to minimize your requirements, so you can allow an extremely limited set of commands, and just execute it with a switch ("if 'dothis' then call
doThis()
, else if 'doThat', calldoThat()
, etc.).