◐ Shell
clean mode source ↗

Unexpected "Class Foo in invalid directory" error

  • Open Fiji's Script Editor
  • Paste in Red_and_Blue.java
  • Try to run it
  • On my system (OS X 10.10 with Java 1.6.0_65 and also with Java 1.8.0_11, I see:
Started Red_and_Blue.java at Sun Mar 01 22:54:01 CST 2015
javax.script.ScriptException: Class Red_And_Blue in invalid directory: /Users/curtis/Desktop/Red_and_Blue.java
    at org.scijava.plugins.scripting.java.JavaEngine.getMavenProject(JavaEngine.java:369)
    at org.scijava.plugins.scripting.java.JavaEngine.access$600(JavaEngine.java:94)
    at org.scijava.plugins.scripting.java.JavaEngine$Builder.<init>(JavaEngine.java:324)
    at org.scijava.plugins.scripting.java.JavaEngine$Builder.<init>(JavaEngine.java:267)
    at org.scijava.plugins.scripting.java.JavaEngine.eval(JavaEngine.java:149)
    at org.scijava.script.ScriptModule.run(ScriptModule.java:175)
    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$2.call(DefaultThreadService.java:164)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:695)

Maybe something to do with the fact that we dubiously ship our own tools.jar?