- Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
This Clojure script works:
(println "hello world") This Clojure script works:
#@String name #@output String output (def output (str name "J")) This Clojure script does not work:
#@String name (println "hello world") Throwing the following error:
[ERROR] Module threw exception java.lang.NullPointerException at java.io.Writer.<init>(Writer.java:88) at java.io.PrintWriter.<init>(PrintWriter.java:113) at java.io.PrintWriter.<init>(PrintWriter.java:100) at clojure.lang.RT.errPrintWriter(RT.java:271) at clojure.lang.Namespace.warnOrFailOnReplace(Namespace.java:90) at clojure.lang.Namespace.intern(Namespace.java:72) at clojure.lang.Var.intern(Var.java:158) at clojure.lang.RT.var(RT.java:343) at org.scijava.plugins.scripting.clojure.ClojureBindings.get(ClojureBindings.java:105) at org.scijava.plugins.scripting.clojure.ClojureBindings.put(ClojureBindings.java:120) at org.scijava.script.AbstractScriptEngine.put(AbstractScriptEngine.java:99) at org.scijava.script.ScriptModule.run(ScriptModule.java:148) at org.scijava.module.ModuleRunner.run(ModuleRunner.java:167) at org.scijava.module.ModuleRunner.call(ModuleRunner.java:126) at org.scijava.module.ModuleRunner.call(ModuleRunner.java:65) at org.scijava.thread.DefaultThreadService$3.call(DefaultThreadService.java:237) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:748) java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:192) at org.scijava.ui.swing.script.TextEditor.evalScript(TextEditor.java:2348) at org.scijava.ui.swing.script.TextEditor.access$1000(TextEditor.java:149) at org.scijava.ui.swing.script.TextEditor$20.execute(TextEditor.java:1939) at org.scijava.ui.swing.script.TextEditor$Executer$1.run(TextEditor.java:1751) Caused by: java.lang.NullPointerException at java.io.Writer.<init>(Writer.java:88) at java.io.PrintWriter.<init>(PrintWriter.java:113) at java.io.PrintWriter.<init>(PrintWriter.java:100) at clojure.lang.RT.errPrintWriter(RT.java:271) at clojure.lang.Namespace.warnOrFailOnReplace(Namespace.java:90) at clojure.lang.Namespace.intern(Namespace.java:72) at clojure.lang.Var.intern(Var.java:158) at clojure.lang.RT.var(RT.java:343) at org.scijava.plugins.scripting.clojure.ClojureBindings.get(ClojureBindings.java:105) at org.scijava.plugins.scripting.clojure.ClojureBindings.put(ClojureBindings.java:120) at org.scijava.script.AbstractScriptEngine.put(AbstractScriptEngine.java:99) at org.scijava.script.ScriptModule.run(ScriptModule.java:148) at org.scijava.module.ModuleRunner.run(ModuleRunner.java:167) at org.scijava.module.ModuleRunner.call(ModuleRunner.java:126) at org.scijava.module.ModuleRunner.call(ModuleRunner.java:65) at org.scijava.thread.DefaultThreadService$3.call(DefaultThreadService.java:237) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:748) Note that Clojure's println works by binding System.out to *out*, and # indicates the beginning of a reader macro in Clojure. The suspicion is that the # is slipping through and messing with the establishment of the user namespace in Clojure.
Metadata
Metadata
Assignees
Labels
No labels