NOTICE! This is a static HTML version of a legacy Fiji BugZilla bug.

The Fiji project now uses GitHub Issues for issue tracking.

Please file all new issues there.

Bug 454 - Updater does not work any more
Updater does not work any more
Status: RESOLVED FIXED
Product: Fiji
Classification: Unclassified
Component: Other
unspecified
PC Windows
: P2 critical
Assigned To: ImageJ Bugs Mailing List
Depends on:
Blocks:
 
Reported: 2012-07-25 11:28 CDT by Sebastian Rhode
Modified: 2012-08-02 22:14 CDT
2 users (show)

See Also:


Attachments
Console Output after Fiji Update Warning (7.69 KB, text/plain)
2012-08-01 09:16 CDT, Sebastian Rhode

Description Sebastian Rhode 2012-07-25 11:28:50 CDT
Hi,

today I updated my Fiji - there was an update for he Updater. But after the restart the "Update Fiji" does not work any more.
Also the possibility to configure the updater from Edit-Options was gone. The menu entry is just no there any more.

Inside the Fiji window "Loading remote ImageJ updater" (or something similar" was displayed and after a while, the following error message was displayed.

java.lang.RuntimeException: java.lang.NullPointerException
	at fiji.updater.Adapter.check(Adapter.java:261)
	at fiji.updater.Adapter.checkOrShowDialog(Adapter.java:79)
	at fiji.updater.Updater.run(Updater.java:14)
	at fiji.updater.UptodateCheck.run(UptodateCheck.java:8)
	at fiji.Main.gentlyRunPlugIn(Main.java:51)
	at fiji.Main.runUpdater(Main.java:42)
	at fiji.Main$1.run(Main.java:88)
Caused by: java.lang.NullPointerException
	at fiji.updater.Adapter.invokeStatic(Adapter.java:432)
	at fiji.updater.Adapter.check(Adapter.java:259)
	... 6 more

Cheers,

Sebi
Comment 1 Johannes Schindelin 2012-07-25 19:24:42 CDT
Can you verify that 'Help>Update Fiji' is also broken? If not, can you look whether the "ImageJ" update site is the first listed in 'Advanced Mode>Manage Update Sites'?

As to the possibility of configuring the updater from Edit>Options: this is intentional. The option dialog will come back as a button in the Updater.
Comment 2 Sebastian Rhode 2012-07-26 08:43:00 CDT
Hi Johannes,

yes, when I uses "Help/Update Fiji"  nothing happens for a while an the the message: "Could not find the class: imagej.updater.guiJUpdater" is shown in the Fiji main window. And the exception error message is displayed:

java.lang.RuntimeException: java.lang.NullPointerException
	at fiji.updater.Adapter.check(Adapter.java:261)
	at fiji.updater.Adapter.checkOrShowDialog(Adapter.java:79)
	at fiji.updater.Updater.run(Updater.java:14)
	at fiji.updater.UptodateCheck.run(UptodateCheck.java:8)
	at fiji.Main.gentlyRunPlugIn(Main.java:51)
	at fiji.Main.runUpdater(Main.java:42)
	at fiji.Main$1.run(Main.java:88)
Caused by: java.lang.NullPointerException
	at fiji.updater.Adapter.invokeStatic(Adapter.java:432)
	at fiji.updater.Adapter.check(Adapter.java:259)
	... 6 more
Cheers,

Sebi

Comment 3 Sebastian Rhode 2012-07-27 20:16:48 CDT
Hi Johannes,

today I ran into a smimilar problem at home (Ubuntu 12.04, 32bit). I tried Help/Upfate Fiji an got the following error message:

java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
	at fiji.updater.Adapter.check(Adapter.java:261)
	at fiji.updater.Adapter.checkOrShowDialog(Adapter.java:79)
	at fiji.updater.Updater.run(Updater.java:14)
	at fiji.updater.UptodateCheck.run(UptodateCheck.java:8)
	at fiji.Main.gentlyRunPlugIn(Main.java:51)
	at fiji.Main.runUpdater(Main.java:42)
	at fiji.Main$1.run(Main.java:88)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at fiji.updater.Adapter.invokeStatic(Adapter.java:434)
	at fiji.updater.Adapter.check(Adapter.java:259)
	... 6 more
Caused by: java.lang.NoClassDefFoundError: imagej/util/FileUtils
	at imagej.updater.core.UpToDate.check(UpToDate.java:88)
	... 12 more
Caused by: java.lang.ClassNotFoundException: imagej.util.FileUtils
	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
	at fiji.FijiClassLoader.loadClass(FijiClassLoader.java:266)
	at fiji.FijiClassLoader.loadClass(FijiClassLoader.java:217)
	at fiji.FijiClassLoader.loadClass(FijiClassLoader.java:212)
	... 13 more


Sebi
Comment 4 Johannes Schindelin 2012-07-27 20:33:13 CDT
Can you please delete the file ij-ui-swing-updater-2.0.0-SNAPSHOT.jar from your Fiji.app/jars/ directory and try again? It *might* be that some interrupted network transfer caused this. If it works after your test, I know how to fix it (basically download to temporary files and only move them after everything downloaded okay).
Comment 5 Sebastian Rhode 2012-07-30 20:06:43 CDT
Hi Johannes,

on my Ubuntu I deleted ij-ui-swing-updater-2.0.0-SNAPSHOT.jar before I staretd Fiji and got the following error message:

java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
	at fiji.updater.Adapter.check(Adapter.java:261)
	at fiji.updater.Adapter.checkOrShowDialog(Adapter.java:79)
	at fiji.updater.Updater.run(Updater.java:14)
	at fiji.updater.UptodateCheck.run(UptodateCheck.java:8)
	at fiji.Main.gentlyRunPlugIn(Main.java:51)
	at fiji.Main.runUpdater(Main.java:42)
	at fiji.Main$1.run(Main.java:88)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at fiji.updater.Adapter.invokeStatic(Adapter.java:434)
	at fiji.updater.Adapter.check(Adapter.java:259)
	... 6 more
Caused by: java.lang.NoClassDefFoundError: imagej/util/FileUtils
	at imagej.updater.core.UpToDate.check(UpToDate.java:88)
	... 12 more
Caused by: java.lang.ClassNotFoundException: imagej.util.FileUtils
	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
	at fiji.FijiClassLoader.loadClass(FijiClassLoader.java:266)
	at fiji.FijiClassLoader.loadClass(FijiClassLoader.java:217)
	at fiji.FijiClassLoader.loadClass(FijiClassLoader.java:212)
	... 13 more


and Then I tried Help/Update Fiji and got:

java.lang.NoClassDefFoundError: imagej/ext/plugin/ImageJPlugin
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
	at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
	at fiji.FijiClassLoader.loadClass(FijiClassLoader.java:225)
	at fiji.FijiClassLoader.loadClass(FijiClassLoader.java:217)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:296)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
	at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
	at fiji.updater.Adapter.loadClass(Adapter.java:566)
	at fiji.updater.Adapter.runUpdater(Adapter.java:148)
	at fiji.updater.Updater.run(Updater.java:17)
	at ij.IJ.runUserPlugIn(IJ.java:185)
	at ij.IJ.runPlugIn(IJ.java:152)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at ij.Command.runPlugIn(Command.java:146)
	at ij.Command.runCommand(Command.java:95)
	at ij.Executer.run(Executer.java:64)
	at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: imagej.ext.plugin.ImageJPlugin
	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
	at fiji.FijiClassLoader.loadClass(FijiClassLoader.java:266)
	at fiji.FijiClassLoader.loadClass(FijiClassLoader.java:217)
	at fiji.FijiClassLoader.loadClass(FijiClassLoader.java:212)
	... 38 more
Cheers,

Sebi
Comment 6 Johannes Schindelin 2012-07-30 20:12:43 CDT
What are the file sizes of the files in jars/ whose names start with 'ij-'?
Comment 7 Sebastian Rhode 2012-07-30 20:54:36 CDT
Hi,

ij.jar - 1.738.290 Bytes
ij-launcher.jar - 12.883 Bytes
ij-updater-core-2.0.0-SNAPSHOT.jar - 174.465 Bytes
ij-ui-swing-updater-2.0.0-SNAPSHOT.jar - 110.858 Bytes (removed from folder)

This above are the file size from my Ubuntu. The ones from the Windows7 I can send you tomorrow.

Sebi
Comment 8 Johannes Schindelin 2012-07-30 21:42:54 CDT
You are definitely missing ij-core-2.0.0-SNAPSHOT.jar and the file sizes indicate that your updater is not up-to-date. Are you sure that there was no error message about any files not being found and/or network timeouts?
Comment 9 Sebastian Rhode 2012-07-30 21:57:59 CDT
Hi Johannes,

hmmm ... the problems started, when I updated Fiji. There was the message, that there is an upadte for the updater. And from here on I ran into problems.

So where do I get the missing file and the up-to-date version of the updater?

Can I download those files somewhere?

Thanks,

Sebi
Comment 10 Sebastian Rhode 2012-07-31 09:44:02 CDT
Hi Johannes,

on my windows7 I have

ij.jar - 1.502.407 bytes
ij-launcher.jar - 12.883 bytes

That´s it.

And I pull out an old version of the Fiji-updater (just a silly try) and started Fiji. Then the message "There is an update for the fiji updater" came up again.

The downloaded file was Fiji-Updater.jar - 11.802 bytes

And after the restart I ran into the same problems. Maybe I shpuld download a fresh version I Fiji, update evrything and copy my stuff into the new directory?

Sebi
Comment 11 Sebastian Rhode 2012-07-31 09:59:54 CDT
Hi Johannes,

I downloaded fiji.nojre.zip and copied the new files into my Fiji folder. Then I stared the update and (hurra) the updated started. It looked like it was indexing file sand fiannyl the following warning appeared:

"Could not updare from site 'ImageJ': java.net.Connect.Exceptioon: Connection timed out: connect Could not updare from site 'Fiji': java.net.Connect.Exceptioon: Connection timed out: connect

Does this help?

Sebi
Comment 12 Johannes Schindelin 2012-07-31 18:12:18 CDT
Are you behind a proxy? That would explain the time-outs. But it would not explain the partially successful update.

Another thing you could try maybe? Unpack fiji-nojre somewhere else than your normal Fiji and try to run things there?

If you are on Windows, it might be a good idea to start Fiji in console mode by something like

    cd Desktop/Fiji.app
    fiji-win32 --console

This should give us a little more debug output.
Comment 13 Sebastian Rhode 2012-08-01 09:16:49 CDT
Created attachment 66
Console Output after Fiji Update Warning
Comment 14 Sebastian Rhode 2012-08-01 09:18:49 CDT
Hi Johannes,

I unpacked nojre-fiji somewhere else an the updater seems to work ok. But I still get the warning mentioned earlier. I attached the console output as a TXT file.

And yes, at work we are behind a proxy.

Sebi
Comment 15 Sebastian Rhode 2012-08-01 16:15:15 CDT
Hi Johannes,

I had a long phone call with our IT support and finally I installed a software called Forefront TMG client (i have no idea what it does), but now the TimeOut warnings are gone. And the update installed and updated some new files.

So it looks to me, like our IT policy caused those problems.

Cheers,

Sebi
Comment 16 Johannes Schindelin 2012-08-01 19:35:03 CDT
Glad to hear it works, I think I simply forgot to use the system proxy settings in Fiji_Updater.jar, which is my fault entirely, very sorry!

Will fix it later, as I am awfully short on time today.
Comment 17 Ron Rock 2012-08-01 20:26:38 CDT
I have a similar problem with the updater failing, even from the help menu.  The console reports:


8/1/12 11:54:11.197 AM [0x0-0x2c92c9].org.fiji: java.lang.NullPointerException
8/1/12 11:54:11.197 AM [0x0-0x2c92c9].org.fiji: 	at fiji.updater.Adapter.invoke(Adapter.java:404)
8/1/12 11:54:11.198 AM [0x0-0x2c92c9].org.fiji: 	at fiji.updater.Adapter.firstTime(Adapter.java:226)
8/1/12 11:54:11.198 AM [0x0-0x2c92c9].org.fiji: 	at fiji.updater.Adapter.runUpdater(Adapter.java:153)
8/1/12 11:54:11.198 AM [0x0-0x2c92c9].org.fiji: 	at fiji.updater.Updater.run(Updater.java:17)
8/1/12 11:54:11.198 AM [0x0-0x2c92c9].org.fiji: 	at ij.IJ.runUserPlugIn(IJ.java:193)
8/1/12 11:54:11.198 AM [0x0-0x2c92c9].org.fiji: 	at ij.IJ.runPlugIn(IJ.java:154)
8/1/12 11:54:11.198 AM [0x0-0x2c92c9].org.fiji: 	at ij.Executer.runCommand(Executer.java:147)
8/1/12 11:54:11.198 AM [0x0-0x2c92c9].org.fiji: 	at ij.Executer.run(Executer.java:78)
8/1/12 11:54:11.198 AM [0x0-0x2c92c9].org.fiji: 	at java.lang.Thread.run(Thread.java:680)

This was after I tried downloading and reinstalling the Fiji package for the Mac.  I'm on OS X 10.7.4.  Let me know if you need anything else to track this down.

Thanks,
Ron 
Comment 18 Johannes Schindelin 2012-08-02 22:14:21 CDT
The NullPointerException should now be gone.