imagej / imagej-server

A RESTful web server for ImageJ [EXPERIMENTAL]
Apache License 2.0
38 stars 17 forks source link

Error with latest Fiji + imagej-server update site #41

Open kephale opened 3 years ago

kephale commented 3 years ago

I am getting this error when trying to use imagej-server from the Server update site on the latest Fiji

# ./ImageJ-linux64 --server
INFO  [2020-08-09 21:20:29,931] org.eclipse.jetty.util.log: Logging initialized @3484ms to org.eclipse.jetty.util.log.Slf4jLog
INFO  [2020-08-09 21:20:29,998] io.dropwizard.server.DefaultServerFactory: Registering jersey handler with root path prefix: /
INFO  [2020-08-09 21:20:29,999] io.dropwizard.server.DefaultServerFactory: Registering admin handler with root path prefix: /
INFO  [2020-08-09 21:20:30,008] io.dropwizard.server.ServerFactory: Starting ImageJ
INFO  [2020-08-09 21:20:30,081] org.eclipse.jetty.setuid.SetUIDListener: Opened application@30fa8a6b{HTTP/1.1,[http/1.1]}{0.0.0.0:8080}
INFO  [2020-08-09 21:20:30,081] org.eclipse.jetty.setuid.SetUIDListener: Opened admin@6f112f70{HTTP/1.1,[http/1.1]}{0.0.0.0:8081}
INFO  [2020-08-09 21:20:30,083] org.eclipse.jetty.server.Server: jetty-9.4.4.v20170414
INFO  [2020-08-09 21:20:30,352] org.eclipse.jetty.server.AbstractConnector: Started application@30fa8a6b{HTTP/1.1,[http/1.1]}{0.0.0.0:8080}
INFO  [2020-08-09 21:20:30,352] org.eclipse.jetty.server.AbstractConnector: Started admin@6f112f70{HTTP/1.1,[http/1.1]}{0.0.0.0:8081}
java.lang.NoClassDefFoundError: io/scif/io/IRandomAccess
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
    at java.lang.Class.getDeclaredMethods(Class.java:1975)
    at org.glassfish.jersey.server.model.IntrospectionModeller$2.run(IntrospectionModeller.java:253)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.glassfish.jersey.server.model.IntrospectionModeller.getAllDeclaredMethods(IntrospectionModeller.java:247)
    at org.glassfish.jersey.server.model.IntrospectionModeller.checkForNonPublicMethodIssues(IntrospectionModeller.java:172)
    at org.glassfish.jersey.server.model.IntrospectionModeller.doCreateResourceBuilder(IntrospectionModeller.java:119)
    at org.glassfish.jersey.server.model.IntrospectionModeller.access$000(IntrospectionModeller.java:80)
    at org.glassfish.jersey.server.model.IntrospectionModeller$1.call(IntrospectionModeller.java:112)
    at org.glassfish.jersey.server.model.IntrospectionModeller$1.call(IntrospectionModeller.java:109)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
    at org.glassfish.jersey.internal.Errors.processWithException(Errors.java:255)
    at org.glassfish.jersey.server.model.IntrospectionModeller.createResourceBuilder(IntrospectionModeller.java:109)
    at org.glassfish.jersey.server.model.Resource.from(Resource.java:797)
    at org.glassfish.jersey.server.ApplicationHandler.initialize(ApplicationHandler.java:465)
    at org.glassfish.jersey.server.ApplicationHandler.access$500(ApplicationHandler.java:184)
    at org.glassfish.jersey.server.ApplicationHandler$3.call(ApplicationHandler.java:350)
    at org.glassfish.jersey.server.ApplicationHandler$3.call(ApplicationHandler.java:347)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
    at org.glassfish.jersey.internal.Errors.processWithException(Errors.java:255)
    at org.glassfish.jersey.server.ApplicationHandler.<init>(ApplicationHandler.java:347)
    at org.glassfish.jersey.servlet.WebComponent.<init>(WebComponent.java:392)
    at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:177)
    at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:369)
    at javax.servlet.GenericServlet.init(GenericServlet.java:244)
    at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:637)
    at org.eclipse.jetty.servlet.ServletHolder.initialize(ServletHolder.java:421)
    at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:744)
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:348)
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:785)
    at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:261)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
    at com.codahale.metrics.jetty9.InstrumentedHandler.doStart(InstrumentedHandler.java:103)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
    at org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:272)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
    at org.eclipse.jetty.server.handler.StatisticsHandler.doStart(StatisticsHandler.java:252)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
    at org.eclipse.jetty.server.Server.start(Server.java:452)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
    at org.eclipse.jetty.server.Server.doStart(Server.java:419)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
    at io.dropwizard.cli.ServerCommand.run(ServerCommand.java:53)
    at io.dropwizard.cli.EnvironmentCommand.run(EnvironmentCommand.java:44)
    at io.dropwizard.cli.ConfiguredCommand.run(ConfiguredCommand.java:85)
    at io.dropwizard.cli.Cli.run(Cli.java:75)
    at io.dropwizard.Application.run(Application.java:93)
    at net.imagej.server.DefaultImageJServerService.start(DefaultImageJServerService.java:74)
    at net.imagej.server.console.ServerArgument.handle(ServerArgument.java:76)
    at org.scijava.console.DefaultConsoleService.processArgs(DefaultConsoleService.java:99)
    at org.scijava.AbstractGateway.launch(AbstractGateway.java:103)
    at net.imagej.Main.main(Main.java:55)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at net.imagej.launcher.ClassLauncher.launch(ClassLauncher.java:291)
    at net.imagej.launcher.ClassLauncher.run(ClassLauncher.java:198)
    at net.imagej.launcher.ClassLauncher.main(ClassLauncher.java:89)
Caused by: java.lang.ClassNotFoundException: io.scif.io.IRandomAccess
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 81 more
ctrueden commented 3 years ago

@kephale ImageJ Server has not yet been updated for pom-scijava 29, sorry.

https://github.com/scijava/pom-scijava/issues/133

kephale commented 3 years ago

Aha, thank you kindly @ctrueden .

frauzufall commented 3 years ago

@kephale I will try to take care of this.

ctrueden commented 3 years ago

@kephale Thanks to @frauzufall and @imagejan, the imagej-server master branch is now built on pom-scijava 29. So it should work with current Fiji. Please test at your convenience (mvn -Pexec in an imagej-server working copy is an easy way). If it works for you, I'll release imagej-server 0.2.0 and upload to the Server update site; let me know!

kephale commented 3 years ago

Thank you @frauzufall, @imagejan, @ctrueden. I just tested and this works for me (specifically atom-imagej-mode).

kephale commented 3 years ago

Hi, just bumping this. It looks like this never got uploaded to the Server update site.

Thank you! Kyle

maximemoreillon commented 3 years ago

Having the same issue here