Ticket #1837 (closed defect: fixed)

Opened 6 years ago

Last modified 6 years ago

Fix the Stable-Fiji job

Reported by: dscho Owned by: dscho
Priority: major Milestone: imagej2-b7-ndim-data
Component: Updater Version:
Severity: serious Keywords:
Cc: Blocked By:
Blocking: #1901

Description

It only came to my attention today that the continuous Fiji releases are stale. The reason is that the Stable-Fiji job tried to use the adapter in Fiji_Updater.jar (for ease of bootstrapping) and that adapter failed to find the class ij.IJ ever since the adapter was fixed to use the correct class loader (which still finds ij.IJ in Fiji because ij.jar is on the application class path). Trying to be nice, the adapter never fails.

Change History

comment:1 Changed 6 years ago by dscho

  • Status changed from new to closed
  • Resolution set to fixed

I fixed this by making  http://update.imagej.net/bootstrap.js (which is the same as  http://update.imagej.net/fix.js, passing through  https://github.com/fiji/fiji/blob/master/plugins/Scripts/Plugins/Utilities/Fix_Updater.js) work via jrunscript. Called that way, it will run the command-line updater.

There is one nasty issue in that at least the Oracle JDK version used by Jenkins (1.6.0 Update 26) does not allow invoking methods obtained via reflection. That prevents us from looking up the static main method and invoking it. As a workaround, we instantiate imagej.updater.ui.CommandLine and run main on it as if it were a non-static method.

With these fixes in place, we can avoid running Fiji_Updater.jar's Adapter and hence do not run into the problem of not finding ij.IJ in the  Stable-Fiji Jenkins job.

comment:2 Changed 6 years ago by bdezonia

  • Blocking 1901 added; 1347 removed
Note: See TracTickets for help on using tickets.