Library not found: tibrvj

jasonline picture jasonline · Mar 29, 2011 · Viewed 27k times · Source

I'm running a Java application on a Linux server that uses Tibco RV and I get the following error:

TibrvException[error=901,message=Library not found: tibrvj]

What is causing this problem?

I have already added lib path containing *.so into LD_LIBRARY_PATH but still the same result.

UPDATE:

Currently, I have <MyApp>/libs/tibrvj.jar added into classpath. The tibrvj.jar was copied from Windows environment to the Linux box where I'm running my application. I removed this from the classpath and added another reference <TibcoDirectory>/libs/tibrvj.jar and it FIXED the problem. They have different sizes with the previous file and there's probably a difference between the one copied from Windows and the one currently in the Linux box. Can someone explain why is this so?

Answer

rchavarria picture rchavarria · Dec 22, 2011

I had the same problem, and I fixed it doing the following:

  1. File tibrvj.jar is present in the classpath of my application
  2. File tibrvj.dll is present via java library path. This file is usually located at bin directory in Tibco Rendezvous home directory (e.g. C:/tibco/tibrv/8.2/bin)
  3. The installed java version is compatible with the installed tibco version.

My environment is:

  1. Windows 7, 64bits
  2. Tibco Rendezvous 8.2, 64bits
  3. JDK 1.6u29, 64bits

Before, I had installed a JDK 1.6u17, for a i586 processor and when I tried to load the library using:

System.loadLibrary("tibrvj");

I got this error:

Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\TIBCO\tibrv\8.2\bin\tibrvj.dll: Can't load AMD 64-bit .dll on a IA 32-bit platform

It gave me the clue to instal the correct java version.