Jump to content
Excelsior Forums
Roger

Deployment issue on Linux

Recommended Posts

Hi,

I purchased the Excelsior Jet charity bundle for Windows and Linux last year. Anyway, 6-7 weeks ago I starting playing with Jet (v7.6 with MP6) on Windows building and testing my products and everything looks very good (I don't like the JetPackII installer on Windows but that's a different issue).

This week I installed Jet v7.6 and MP6 on Fedora Core 4 64-bit server. Both jetcp and JetPackII worked very well. I tested my application after being built with jetcp and it worked. I used JetPackII to create an "Excelsior Installer Setup" package for my application on Linux. I used a different UserID on the same server (Fedora Core 4 64-bit) to install and test the application and everything worked.

Next, I ftp-ed my application to another Linux server: Fedora 9 64-bit. It successfully installed but when I run it, I get the following error:

Exception in thread "main" java.lang.UnsatisfiedLinkError: exception occurred in JNI_OnLoad
at java.lang.Void.<unknown>(Unknown Source)
at java.lang.Void.<unknown>(Unknown Source)
at java.lang.Void.<unknown>(Unknown Source)
at java.lang.Void.<unknown>(Unknown Source)

I tried installing my application under different UserIDs on the Fedora 9 server, the application will install successfully but all fail to start and I get the above error.

I did some searches and other people say it is a JVM conflict. I had both OpenJDK and gcc-jdk installed on Fedora 9, I un-installed both but I still get the same error.

This is a show stopper for me. If I build my application with jetcp and JetPackII as an "Excelsior Installer Setup" package then I need it to work on any Linux server.

Help.

Regards,

Roger Lacroix

Share this post


Link to post
Share on other sites

Hi,

Could you please show your LD_LIBRARY_PATH value?

(run

echo $LD_LIBRARY_PATH

in console)

Also, please enable full stack trace support at page "Target" of JET Control Panel, re-compile, re-pack and re-install your application.

Then please run it again and post a stack trace here.

Share this post


Link to post
Share on other sites

Sorry for the delay, I was busy with other work.

Could you please show your LD_LIBRARY_PATH value?

LD_LIBRARY_PATH is not set.

please enable full stack trace support at page "Target" of JET Control Panel, re-compile, re-pack and re-install your application.

Did that (several times) and it did not make any difference. The exception looked exactly the same:

Exception in thread "main" java.lang.UnsatisfiedLinkError: exception occurred in JNI_OnLoad
at java.lang.Void.<unknown>(Unknown Source)
at java.lang.Void.<unknown>(Unknown Source)
at java.lang.Void.<unknown>(Unknown Source)
at java.lang.Void.<unknown>(Unknown Source)

This a GUI application, so I added some basic logging and began some head banging. After a bit of fooling around, I found that the exception was thrown with the following line:

UIManager.put("swing.boldMetal", Boolean.FALSE);

So, I changed the code to:

try
{
  UIManager.put("swing.boldMetal", Boolean.FALSE);
}
catch(Exception e)
{
  e.printStackTrace();
}

But it did not make any difference - the try/catch did not catch the exception. So, I commented it out and everything was fine until the code hit the following:

try
{
  UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch (Exception e)
{
  e.printStackTrace();
}

Again, it crashed with the above exception and the try/catch did not catch the exception.

First off, why is Jet having an issue with the UIManager class? Secondly, why isn't Jet catching the exceptions and allowing my code to handle the error in the "catch" clause?

Recap: The application is build with Jet v7.6 and MP6 on Fedora Core 4 64-bit server and is being installed/tested on Fedora 9 64-bit.

Help!

Regards,

Roger Lacroix

Share this post


Link to post
Share on other sites

Hello,

Could you please try to run your application on Fedora 9 64-bit using 32-bit Oracle JDK? Does it run successfully?

First off, why is Jet having an issue with the UIManager class? Secondly, why isn't Jet catching the exceptions and allowing my code to handle the error in the "catch" clause?

It looks like side-effects of some other problem.

--

Exelsior Support

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×