Skip to content

Commit 85c8c88

Browse files
committed
JavaEngine: use the JavaService to run the class
1 parent 940b753 commit 85c8c88

File tree

1 file changed

+4
-19
lines changed

1 file changed

+4
-19
lines changed

src/main/java/org/scijava/plugins/scripting/java/JavaEngine.java

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@
4646
import java.io.Reader;
4747
import java.io.StringReader;
4848
import java.io.Writer;
49-
import java.lang.reflect.Method;
5049
import java.net.URL;
5150
import java.net.URLClassLoader;
5251
import java.util.ArrayList;
@@ -66,11 +65,8 @@
6665
import javax.xml.transform.dom.DOMSource;
6766
import javax.xml.transform.stream.StreamResult;
6867

69-
import org.scijava.command.Command;
70-
import org.scijava.command.CommandInfo;
7168
import org.scijava.command.CommandService;
7269
import org.scijava.plugin.Parameter;
73-
import org.scijava.plugin.Plugin;
7470
import org.scijava.plugin.PluginService;
7571
import org.scijava.script.AbstractScriptEngine;
7672
import org.scijava.util.FileUtils;
@@ -100,6 +96,9 @@ public class JavaEngine extends AbstractScriptEngine {
10096
@Parameter
10197
private CommandService commandService;
10298

99+
@Parameter
100+
JavaService javaService;
101+
103102
@Override
104103
public Object eval(String script) throws ScriptException {
105104
return eval(new StringReader(script));
@@ -168,21 +167,7 @@ public void println(final String line) throws IOException {
168167

169168
// launch main class
170169
final Class<?> clazz = classLoader.loadClass(mainClass);
171-
if (Command.class.isAssignableFrom(clazz)) {
172-
final Plugin annotation = clazz.getAnnotation(Plugin.class);
173-
final CommandInfo info = new CommandInfo(mainClass, annotation) {
174-
175-
@Override
176-
public Class<? extends Command> loadClass() {
177-
return (Class<? extends Command>) clazz;
178-
}
179-
};
180-
pluginService.addPlugin(info);
181-
commandService.run(info, true);
182-
} else {
183-
Method main = clazz.getMethod("main", new Class[] { String[].class });
184-
main.invoke(null, new Object[] { new String[0] });
185-
}
170+
javaService.run(clazz);
186171
} catch (Exception e) {
187172
if (err != null) err.close();
188173
if (e instanceof ScriptException) throw (ScriptException)e;

0 commit comments

Comments
 (0)