Bug 212149

Summary: NoClassDefFoundError when running with proprietary sun jvm
Product: [Fedora] Fedora Reporter: Christian Nolte <ch.nolte>
Component: azureusAssignee: Anthony Green <green>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: belegdol, extras-qa, nmiell
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-10-28 14:24:42 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
jvm crash dump none

Description Christian Nolte 2006-10-25 11:51:08 UTC
Description of problem:

Azureus won't start when using a proprietary sun-VM. The following exception occurs:

Exception in thread "main" java.lang.NoClassDefFoundError:
org/bouncycastle/jce/spec/ECParameterSpec
        at
com.aelitis.azureus.core.security.impl.CryptoManagerImpl.<init>(CryptoManagerImpl.java:75)
        at
com.aelitis.azureus.core.security.impl.CryptoManagerImpl.getSingleton(CryptoManagerImpl.java:60)
        at
com.aelitis.azureus.core.security.CryptoManagerFactory.getSingleton(CryptoManagerFactory.java:33)
        at
com.aelitis.azureus.core.impl.AzureusCoreImpl.<init>(AzureusCoreImpl.java:155)
        at
com.aelitis.azureus.core.impl.AzureusCoreImpl.create(AzureusCoreImpl.java:92)
        at
com.aelitis.azureus.core.AzureusCoreFactory.create(AzureusCoreFactory.java:46)
        at org.gudy.azureus2.ui.swt.Main.<init>(Main.java:143)
        at org.gudy.azureus2.ui.swt.Main.main(Main.java:162)


Version-Release number of selected component (if applicable):

java -version
java version "1.5.0_07"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_07-b03)
Java HotSpot(TM) Server VM (build 1.5.0_07-b03, mixed mode)

azureus-2.5.0.0-7.fc6

Comment 1 Anthony Green 2006-10-25 11:57:26 UTC
Please edit /usr/bin/azureus to put /usr/share/java/gcj-endorsed/bcprov-1.33.jar
on the CLASSPATH and let me know if that works.

Comment 2 Christian Nolte 2006-10-25 12:32:27 UTC
That does work. But now Azureus crashes shortly after drawing the initial
application window. There is a SIGSEGV in libgtkjni-2.8.so. Who shall this bug
be reported to? I attach the hs_err-dumpfile. One can never know...

Comment 3 Christian Nolte 2006-10-25 12:33:24 UTC
Created attachment 139340 [details]
jvm crash dump

Comment 4 Julian Sikorski 2006-10-25 22:24:49 UTC
I am getting access denied error after putting
/usr/share/java/gcj-endorsed/bcprov-1.33.jar into classpath.

Comment 5 Julian Sikorski 2006-10-27 17:10:59 UTC
To be more precise:
[xxx@xxx ~]$ LANG=en_GB azureus
/usr/bin/azureus: line 18: /usr/share/java/gcj-endorsed/bcprov-1.33.jar:
Permission denied
Exception in thread "main" java.lang.NoClassDefFoundError:
org/bouncycastle/jce/spec/ECParameterSpec
        at
com.aelitis.azureus.core.security.impl.CryptoManagerImpl.<init>(CryptoManagerImpl.java:75)
        at
com.aelitis.azureus.core.security.impl.CryptoManagerImpl.getSingleton(CryptoManagerImpl.java:60)
        at
com.aelitis.azureus.core.security.CryptoManagerFactory.getSingleton(CryptoManagerFactory.java:33)
        at
com.aelitis.azureus.core.impl.AzureusCoreImpl.<init>(AzureusCoreImpl.java:155)
        at
com.aelitis.azureus.core.impl.AzureusCoreImpl.create(AzureusCoreImpl.java:92)
        at
com.aelitis.azureus.core.AzureusCoreFactory.create(AzureusCoreFactory.java:46)
        at org.gudy.azureus2.ui.swt.Main.<init>(Main.java:143)
        at org.gudy.azureus2.ui.swt.Main.main(Main.java:162)
[xxx@xxx ~]$

Comment 6 Nicholas Miell 2006-10-28 05:16:17 UTC
Explicitly adding bcprov to the CLASSPATH fixes it -- I made a symlink pointing
/usr/share/java/bcprov.jar at /usr/share/java/gcj-endorsed/bcprov-1.33.jar and
then added bcprov to the build-classpath invocation in /usr/bin/azureus and
Azureus now works fine (modulo the crashes in the GTK Java binding, which are
obviously an unrelated issue).

Belegdol --
What's the output of "ls -Z /usr/share/java/gcj-endorsed/bcprov-1.33.jar"?

Comment 7 Julian Sikorski 2006-10-28 11:33:46 UTC
The output is as follows:
-rw-r--r--  root root system_u:object_r:lib_t         
/usr/share/java/gcj-endorsed/bcprov-1.33.jar

Comment 8 Anthony Green 2006-10-28 14:24:42 UTC
I've added the bouncycastle jar file to CLASSPATH in azureus-2.5.0.0-8, which
should show up in Extras in the next refresh.

The SIGSEGV should be opened up as a new bug against azureus.  We can create
other bugs and mark them as dependencies as we figure it out.

I can't reproduce the permission denied problem.  Belegdol - please open that as
a new issue if you still have the problem with the new azureus.  Also, be sure
to provide the results of "which java && java -version" in your bug report as
per the  release notes.

Thanks!