Bug 158870 - eclipse's bundled ant classes being picked up by system ant
eclipse's bundled ant classes being picked up by system ant
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: eclipse (Show other bugs)
4
All Linux
medium Severity high
: ---
: ---
Assigned To: eclipse-bugs
:
Depends On:
Blocks: FC4Blocker
  Show dependency treegraph
 
Reported: 2005-05-26 10:04 EDT by Gary Benson
Modified: 2007-11-30 17:11 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2006-02-03 17:07:17 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Fix (2.29 KB, patch)
2005-05-26 11:01 EDT, Gary Benson
no flags Details | Diff

  None (edit)
Description Gary Benson 2005-05-26 10:04:17 EDT
Description of problem:
Some of eclipse's bundled ant classes are being picked up by the system ant,
which then fails because the classpath (for system ant) does not contain all the
classes that the (newer) eclipse ant requires.

Version-Release number of selected component (if applicable):
eclipse-3.1.0_fc-0.M7.7

How reproducible:
Always

Steps to Reproduce:
1. echo '<project/>' > build.xml
2. ant
  
Actual results:
Buildfile: build.xml
java.lang.NoClassDefFoundError: while resolving class: org.apache.tools.ant.Project
   at java.lang.VMClassLoader.transformException(java.lang.Class,
java.lang.Throwable) (/usr/lib/libgcj.so.6.0.0)
   at java.lang.VMClassLoader.resolveClass(java.lang.Class)
(/usr/lib/libgcj.so.6.0.0)
   at java.lang.Class.initializeClass() (/usr/lib/libgcj.so.6.0.0)
   at org.apache.tools.ant.Main.runBuild(java.lang.ClassLoader)
(/usr/lib/eclipse/plugins/org.apache.ant_1.6.3/lib/ant.jar.so)
   at org.apache.tools.ant.Main.startAnt(java.lang.String[],
java.util.Properties, java.lang.ClassLoader)
(/usr/lib/eclipse/plugins/org.apache.ant_1.6.3/lib/ant.jar.so)
   at org.apache.tools.ant.launch.Launcher.run(java.lang.String[])
(/usr/lib/eclipse/plugins/org.apache.ant_1.6.3/lib/ant-nodeps.jar.so)
   at org.apache.tools.ant.launch.Launcher.main(java.lang.String[])
(/usr/lib/eclipse/plugins/org.apache.ant_1.6.3/lib/ant-nodeps.jar.so)
   at gnu.java.lang.MainThread.call_main() (/usr/lib/libgcj.so.6.0.0)
   at gnu.java.lang.MainThread.run() (/usr/lib/libgcj.so.6.0.0)
Caused by: java.lang.ClassNotFoundException: org.apache.tools.ant.Executor not
found in...
   ...

Expected results:
Buildfile: build.xml

BUILD SUCCESSFUL
Total time: 1 second
Comment 1 Thomas Fitzsimmons 2005-05-26 10:42:26 EDT
Our eclipse packages create symlinks to the system-installed ant (rather than
bundling their own version of ant).  In M7 eclipse started bundling ant 1.6.4. 
Currently our eclipse packages link to what they think is 1.6.2, which causes
the breakage you're seeing.
Comment 2 Gary Benson 2005-05-26 10:46:43 EDT
How does that work?  org.apache.tools.ant.Executor first appeared in ant-1.6.3:
the code that references it must come from that version of ant, so eclipse must
be bundling it, must it not?
Comment 3 Gary Benson 2005-05-26 11:01:36 EDT
Created attachment 114870 [details]
Fix

This ought to fix it.  It's going to take some messing about to build it
though:

 1. delete eclipse-3.1.0_fc-0.M7.5 and eclipse-3.1.0_fc-0.M7.7 from dist-fc4
    (to stop the new classes from masking the system ant's)
 2. move java-1.4.2-gcj-compat-1.4.2.0-40jpp_26rh out of dist-fc4 temporarily
    and delete java-1.4.2-gcj-compat-1.4.2.0-40jpp_25rh entirely
    (so tools.jar is looking in the right place for ecj)
 3. build the new eclipse
 4. move java-1.4.2-gcj-compat-1.4.2.0-40jpp_26rh back into dist-fc4.
Comment 5 Gary Benson 2005-05-27 05:15:45 EDT
I can confirm that the combination of eclipse-ecj-3.1.0_fc-0.M7.8 and
java-1.4.2-gcj-compat-1.4.2.0-40jpp_30rh works beautifully.

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