Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 160327 - Missing /usr/{share,lib}/java-1.3.1 breaks ant with JDK1.3
Summary: Missing /usr/{share,lib}/java-1.3.1 breaks ant with JDK1.3
Alias: None
Product: Fedora
Classification: Fedora
Component: jpackage-utils
Version: 4
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Thomas Fitzsimmons
QA Contact:
Depends On:
TreeView+ depends on / blocked
Reported: 2005-06-14 14:18 UTC by Carsten Clasohm
Modified: 2007-11-30 22:11 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2006-02-06 20:33:14 UTC

Attachments (Terms of Use)

System ID Priority Status Summary Last Updated
JPackage 167 None None None Never

Description Carsten Clasohm 2005-06-14 14:18:50 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050513 Fedora/1.0.4-1.3.1 Firefox/1.0.4

Description of problem:
With jpackage-utils-1.6.3-1jpp_1rh, ant-1.6.2-3jpp_8fc and the Sun JDK 1.3.1, running ant results in this error message:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/tools/ant/launch/Launcher

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

How reproducible:

Steps to Reproduce:
Install the above packages and the Sun JDK 1.3.1, set JAVA_HOME to point to the 1.3.1 JDK, and run "ant".

Actual Results:  Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/tools/ant/launch/Launcher

With JAVA_HOME pointing to the 1.4 JDK, ant runs fine.

Additional info:

The reason for the above error message is a broken CLASSPATH. Replacing the eval with echo in the last line of /usr/bin/ant shows this:

exec "/usr/java/jdk1.3/bin/java" -classpath "/usr/bin/build-classpath: error: JAVAVER_LIBDIR /usr/share/java-1.3.1 does not exist or is not a directory:/usr/bin/build-classpath: error: JAVAVER_LIBDIR /usr/share/java-1.3.1 does not exist or is not a directory:/usr/java/jdk1.3/lib/tools.jar:/opt/oracle10/JRE:/opt/oracle10/jlib:/opt/oracle10/rdbms/jlib:/opt/oracle10/network/jlib" -Dant.home="/usr/share/ant" -Dant.library.dir="/usr/share/ant/lib" -lib ""

Apparently one of the shell scripts that initializes the environment before running ant expects /usr/share/java-1.3.1 to exist, and puts its error message into the CLASSPATH.

Manually creating the two directories /usr/share/java-1.3.1 and /usr/lib/java-1.3.1 fixes this problem.

Either these two directories should be added to the jpackage-utils RPM, or the responsible shell script should be modified to ignore non-existant directories.

Comment 1 Thomas Fitzsimmons 2005-10-01 21:37:30 UTC
OK, I'll add those directories to jpackage-utils.

Comment 2 Thomas Fitzsimmons 2006-02-06 20:33:14 UTC
Directories added to jpackage-utils-1.6.6-1jpp_2rh.  Closing.

Note You need to log in before you can comment on or make changes to this bug.