3535import java .util .HashMap ;
3636import java .util .LinkedList ;
3737import java .util .Map ;
38+ import java .util .concurrent .ExecutionException ;
39+ import java .util .concurrent .Future ;
3840
3941import org .scijava .command .CommandInfo ;
42+ import org .scijava .command .CommandModule ;
4043import org .scijava .command .CommandService ;
4144import org .scijava .console .AbstractConsoleArgument ;
4245import org .scijava .console .ConsoleArgument ;
@@ -106,7 +109,7 @@ private void run(final String commandToRun, final String optionString) {
106109 final File scriptFile = new File (commandToRun );
107110 if (scriptFile .exists () && scriptService .canHandleFile (commandToRun )) {
108111 try {
109- scriptService .run (scriptFile , true , inputMap );
112+ scriptService .run (scriptFile , true , inputMap ). get () ;
110113 } catch (final Exception exc ) {
111114 logService .error (exc );
112115 }
@@ -129,7 +132,10 @@ private void run(final String commandToRun, final String optionString) {
129132 // couldn't find anything to run
130133 if (info == null ) return ;
131134 // TODO: parse the optionString a la ImageJ1
132- commandService .run (info , true , inputMap );
135+ try {
136+ commandService .run (info , true , inputMap ).get ();
137+ } catch (final Exception exc ) {
138+ logService .error (exc );
139+ }
133140 }
134-
135141}
0 commit comments