Peny
Peny

Reputation: 11

Ubuntu A fatal error has been detected by the JRE

I have written a java program that plays videos using vlcj on a frame. I use NativeDiscovery().discover() to get the libvlc libraries, the program works on windows but on ubuntu NativeDiscovery().doscover() returns false and I get a fatal error with the log file: This is just the beginning of the log file

 A fatal error has been detected by the Java Runtime Environment:

 SIGSEGV (0xb) at pc=0xb7674f98, pid=21800, tid=2195979072

 JRE version: 7.0_25-b30
 Java VM: OpenJDK Server VM (23.7-b01 mixed mode linux-x86 )
 Problematic frame:
 C  [libc.so.6+0x12ef98]  _IO_file_underflow+0x68

 Filed to write core dump. Core dumps have been disabled. To enable core dumping, try ulimit -c unlimited" before starting Java again

 If you would like to submit a bug report, please include
 instructions on how to reproduce the bug and visit:
   https://bugs.launchpad.net/ubuntu/+source/openjdk-7/

Thanks guys for your help.

Upvotes: 0

Views: 3114

Answers (5)

Dr. Mehmet Ali ATICI
Dr. Mehmet Ali ATICI

Reputation: 609

In my case, installing Oracle JDK and setting up as default jdk has solved the problem.

Upvotes: 0

user3040656
user3040656

Reputation: 1

I encountered a similar problem. I solved it by removing openjdk and reinstalling it :)

Upvotes: 0

caprica
caprica

Reputation: 4146

This is almost certainly the same issue as https://github.com/caprica/vlcj/issues/62.

There is a long history of investigations into that issue which you can see in the comments at that github issue page.

The short version is that for some currently unknown reason:

  1. a combination of 32-bit Java7 JVM and 32-bit Ubuntu triggers this fatal error;
  2. the error pertains to the parsing of LUA scripts when VLC plays media;
  3. deleting VLC's LUA scripts will resolve the problem - BUT things like YouTube will stop working (since VLC's YouTube support requires LUA);
  4. It will work with Java6 on 32-bit Ubuntu;
  5. It will work with Java7 on 64-bit Ubuntu;
  6. If you write the equivalent "C" program, it will work - so something in the JVM is triggering the problem.

Unfortunately, I do not know if the bug is in Ubuntu's LUA build or the Oracle/OpenJDK build of the Java7 JVM.

Switching from OpenJDK to Oracle's JDK or vice versa will likely make no difference.

Upvotes: 0

desperateCoder
desperateCoder

Reputation: 700

I had to face a bunch of similar errors as i worked with VLCJ last year. I dont know, if you have exactly the same error, as i had, but i can give you some hints:

  • in my case i had to use oracles java 7, not the openJDK
  • i had to set some symbolic links ("ln -s ...") to the vlc-executables, because the versionnumber was not the one, vlcj expected.

I dont know, if this is useful to you, but as i was in your situation, i was grateful for every hint.

Upvotes: 1

DenicioCode
DenicioCode

Reputation: 9336

The reason could be the usage of the OpenJDK. Try the OracleJDK.

Upvotes: 0

Related Questions