Login  Register

Re: Segmentation fault at ImageJ startup

Posted by Michael Schmid on Jun 30, 2017; 4:22pm
URL: http://imagej.273.s1.nabble.com/Segmentation-fault-at-ImageJ-startup-tp5019008p5019012.html

Hi everyone,

for most functions, "ImageJ --system" works. It seems that this makes
ImageJ use the default Java installation.

Unfortunately, I can't use 'Compile&Run' with it.

I always get an error relating to some Java built-in class, e.g.
   /home/schmid/ImageJ/plugins/Various/Test.java:23: cannot access
java.lang.CharSequence
bad class file:
/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/rt.jar(java/lang/CharSequence.class)
bad constant pool tag: 18 at 10

and a lot of warnings like:
   warning:
/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/rt.jar(java/lang/Object.class):
major version 52 is newer than 51, the highest major version supported
by this compiler.
It is recommended that the compiler be upgraded.

So, obviously there is a mismatch between the Java Compiler that comes
with ImageJ and the Java of the system. The compiler works only if
ImageJ uses the Java installed with ImageJ.
---

It works if I start ImageJ using the following shell script instead of
the normal ImageJ Launcher (I've named it named 'ImageJ.sh'). The shell
script should be inside the ImageJ directory. It does not fully replace
the ImageJ launcher, but given its simplicity it is not so bad:

#!/bin/sh
unset CDPATH
MYPATH="`realpath "$0"`"
DIRECTORY="`dirname "$MYPATH"`"
cd $DIRECTORY
$DIRECTORY/jre/bin/java -jar $DIRECTORY/ij.jar "$*"

This file should be executable (Right-click>Properties>Permissions>Allow
executing file as program).


I also have an ImageJ.desktop file now pointing to this shell script
instead of the launcher, so it is possible to drag&drop files onto it to
open them. The ImageJ.desktop file should be also executable and in the
user's ~/.local/share/applications (hidden directory, type CTRL-H to see
it in the 'Files' window; the tilde stands for the user's home
directory). Replace the path to the shell script in Exec and TryExec
with that in your system, and also set the lines with Path and Icon
accordingly:

[Desktop Entry]
Version=1.0
Name=ImageJ
GenericName=ImageJ
X-GNOME-FullName=Image Processing
Comment=Scientific Image Processing and Analysis
Type=Application
Categories=Science;Graphics;
Exec=/home/schmid/ImageJ/ImageJ.sh
TryExec=/home/schmid/ImageJ/ImageJ.sh
Path=/home/schmid/ImageJ/
Terminal=false
StartupNotify=true
Icon=/home/schmid/ImageJ/images/icon.png
StartupWMClass=ij-ImageJ
MimeType=image/bmp;image/gif;image/tiff;image/jpeg;image/png;image/x-portable-graymap;application/zip;text/x-java;text/english;text/plain;application/javascript;

(Beware of line breaks caused by the mailer, the line starting with
'MimeType=' is rather long and the last line of the file)


I'm using ImageJ 1.51p; System Java is OpeJDK Java 1.8.0_131 [64-bit]
Ubuntu 16.04TLS Linux 4.4.0-81-generic


Michael
________________________________________________________________
On 30/06/2017 11:03, Volker Baecker wrote:

> Hello Silas,
> yes this has been discussed here and in the FIJI forum before. The cause
> is in the binary launcher and the linux kernel update. You can use the
> --system switch to make it work, i.e. from the command line run
>
> ImageJ --system for ImageJ and
> ImageJ-linux64 --system for FIJI
>
> Best regards,
> Volker
>
> Silas Kraus:
>> Good morning/evening depending on time zone.
>>
>> Ever since about a week ago, I am not able to start ImageJ on Linux.
>> Whenever I try to start it from console, the Java splash screen appears
>> for ~ 1 second, then disappears and the console reports a segmentation
>> fault without any further information.
>>
>> I have the suspicion that the error might have occured since 2017-06-22
>> when I upgraded the package "libservlet3.1-java". Does ImageJ make use
>> of this library? Does anyone else have this problem?
>>
>> My system is Kubuntu 16.10 64bit, so a Debian-family system. On my home
>> computer with Kubuntu 14.04, the same error happens. On Windows
>> everything works fine.
>>
>> Any hint or help is very much appreciated.
>> Silas
>>
>> --
>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>
>
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html