Skip to content

Guide users to Python options when trying to run scyjava python scripts #13

@hinerm

Description

@hinerm

If we are not in python mode but select Python (scyjava) from the script language list, or try to actually run a Python (scyjava) script, we should inform the user that they need to restart in Python mode and perhaps even open the Python settings for them.

Currently we just get an error when we run:

Started New_.py at Sat Aug 23 14:18:16 CDT 2025
java.lang.IllegalStateException: The PythonScriptRunner could not be found in the ObjectService. To use the
Python script engine, you must call scyjava.enable_scijava_scripting(context)
with this script engine's associated SciJava context before using it.
	at org.scijava.plugins.scripting.python.PythonScriptEngine.eval(PythonScriptEngine.java:81)
	at org.scijava.script.ScriptModule.run(ScriptModule.java:173)
	at org.scijava.module.ModuleRunner.run(ModuleRunner.java:165)
	at org.scijava.module.ModuleRunner.call(ModuleRunner.java:125)
	at org.scijava.module.ModuleRunner.call(ModuleRunner.java:64)
	at org.scijava.thread.DefaultThreadService.lambda$wrap$2(DefaultThreadService.java:247)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
	at java.base/java.lang.Thread.run(Thread.java:1583)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions