Open
Description
When running with Java 8, the following program:
import ij.plugin.PlugIn;
import ij.IJ;
public class Hello_World implements PlugIn {
@Override
public void run(String arg) {
IJ.log("Hello, world!");
}
}
saved as Hello_World.java
from the Script Editor, then executed, works.
But when run with Java 11 or 17 or 21, it fails with a series of errors:
Started Hello_World.java at Fri Mar 07 22:06:20 CST 2025
Hello_World not up-to-date because 1 source files are not up-to-date (/tmp/java1072651054789608596/src/main/java/Hello_World.java)
Compiling 1 file in /tmp/java1072651054789608596
[-classpath, /tmp/java1072651054789608596/target/classes, -d, /tmp/java1072651054789608596/target/classes, /tmp/java1072651054789608596/src/main/java/Hello_World.java]
using the class path: /tmp/java1072651054789608596/target/classes
warning: Supported source version 'RELEASE_8' from annotation processor 'org.scijava.annotations.AnnotationProcessor' less than -source '11'
/tmp/java1072651054789608596/src/main/java/Hello_World.java:1: error: package ij.plugin does not exist
import ij.plugin.PlugIn;
^
/tmp/java1072651054789608596/src/main/java/Hello_World.java:2: error: package ij does not exist
import ij.IJ;
^
/tmp/java1072651054789608596/src/main/java/Hello_World.java:4: error: cannot find symbol
public class Hello_World implements PlugIn {
^
symbol: class PlugIn
3 errors
1 warning
java.lang.ClassNotFoundException: Hello_World
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:476)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:589)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
...