[fedora-java] ant with jdk5

fernando at lozano.eti.br fernando at lozano.eti.br
Tue Jun 8 18:55:26 UTC 2010


Hi there,


I filled Bug 601830 about this problem we were discussing on the users list. So far it looks like
xerces-j2 was built for Fedora-13 using OpenJDK6 but without a target directive, and thus requires
Java >= 1.6.0. This prevents me from running Apache Ant using Sun JDK 5 (repackaged by JPackage
standards).

I hope the mantainer decides this is worth to fix and release a new xerces-j2 package compatible
with at least Java 1.5.0. In the mean time:

- What is class data version 45.3 (from log4j.jar)?
- How to install (from Fedora or JPackage repos) an jaxp_parser_impl.jar / Xerces J2 complied for
JDK 5m if there is such a thing?
- If there isn't, where should I change the SPEC from xervers-j2*src.rpm to rebuild it using Sun
JDK5 or to add target=1.5.0?
- How can it be that ant runs fine using gij which in theory supports only Java 5, but not with Sun
JDK 5?


[]s, Fernando Lozano

> Hi,
> 
> This list (java-devel) is a better place to discuss the issue below.  I
> leave you, Fernando, in capable hands :)
> 
> Andrew
> 
> * fernando at lozano.eti.br <fernando at lozano.eti.br> [2010-06-08 13:21]:
> > Hi,
> > 
> > I tested all Ant jars and here (F13 x86_64) all classes are version 46.0 (Java 1.2)
> > 
> > Then I enabled exec_debug on /usr/bin/ant to get the ant invocation classpath, which is:
> > 
> > $ ant -diagnostics
> > exec "/usr/lib/jvm/java/bin/java" -classpath
> >
> "/usr/share/java/ant.jar:/usr/share/java/ant-launcher.jar:/usr/share/java/jaxp_parser_impl.jar:/us
> r/share/java/xml-commons-apis.jar:/usr/share/java/antlr.jar:/usr/share/java/ant/ant-antlr.jar:/usr
> /share/java/bcel.jar:/usr/share/java/ant/ant-apache-bcel.jar:/usr/share/java/bsf.jar:/usr/share/ja
> va/ant/ant-apache-bsf.jar:/usr/share/java/log4j.jar:/usr/share/java/ant/ant-apache-log4j.jar:/usr/
> share/java/oro.jar:/usr/share/java/ant/ant-apache-oro.jar:/usr/share/java/regexp.jar:/usr/share/ja
> va/ant/ant-apache-regexp.jar:/usr/share/java/xml-commons-resolver.jar:/usr/share/java/ant/ant-apac
> he-resolver.jar:/usr/share/java/jakarta-commons-logging.jar:/usr/share/java/ant/ant-commons-loggin
> g.jar:/usr/share/java/jakarta-commons-net.jar:/usr/share/java/ant/ant-commons-net.jar:/usr/share/j
> ava/javamail.jar:/usr/share/java/jaf.jar:/usr/share/java/ant/ant-javamail.jar:/usr/share/java/jdep
> end.jar:/usr/share/java/ant/ant-jdepend.jar:/usr/share/java/jsch.jar:/usr/share/java/ant/ant-jsch.
> >  jar:/usr/s hare/java/junit.jar:/usr/share/j
> >
> ava/ant/ant-junit.jar:/usr/share/java/ant/ant-nodeps.jar:/usr/share/java/ant/ant-swing.jar:/usr/sh
> are/java/jaxp_transform_impl.jar:/usr/share/java/ant/ant-trax.jar:/usr/share/java/xalan-j2-seriali
> > zer.jar:/usr/lib/jvm/java/lib/tools.jar" -Dant.home="/usr/share/ant"
> > -Dant.library.dir="/usr/share/ant/lib" org.apache.tools.ant.launch.Launcher -cp ""
> > "-diagnostics" 
> > And tested all classes on every jar outside /usr/share/ant (which I had already tested). Here's
> > the results:
> > 
> > /usr/share/java/jaxp_parser_impl.jar             compiled Java class data, version 50.0 (Java
> > 1.6) /usr/share/java/xml-commons-apis.jar            compiled Java class data, version 49.0
> > (Java 1.5) /usr/share/java/antlr.jar                       compiled Java class data, version
> > 49.0 (Java 1.5) /usr/share/java/bcel.jar                        compiled Java class data,
> > version 49.0 (Java 1.5) /usr/share/java/bsf.jar                         compiled Java class data
> > , version 48.0 (Java 1.4) /usr/share/java/log4j.jar                       compiled Java class
> > data, version 45.3 /usr/share/java/oro.jar                         compiled Java class data,
> > version 49.0 (Java 1.5) /usr/share/java/regexp.jar                      compiled Java class data
> > , version 49.0 (Java 1.5) /usr/share/java/xml-commons-resolver.jar        compiled Java class
> > data, version 48.0 (Java 1.4) /usr/share/java/jakarta-commons-logging.jar     compiled Java
> > class data, version 49.0 (Java 1.5) /usr/share/java/jakarta-commons-net.jar         compiled
> > Java class data, version 49.0 (Java 1.5) /usr/share/java/javamail.jar                   
> > compiled Java class data, version 49.0 (Java 1.5) /usr/share/java/jaf.jar                       
> >  compiled Java class data, version 49.0 (Java 1.5) /usr/share/java/jdepend.jar                  
> >   compiled Java class data, version 49.0 (Java 1.5) /usr/share/java/jsch.jar                    
> >    compiled Java class data, version 49.0 (Java 1.5) /usr/share/java/junit.jar                  
> >     compiled Java class data, version 49.0 (Java 1.5) /usr/share/java/jaxp_transform_impl.jar   
> >      compiled Java class data, version 49.0 (Java 1.5) /usr/share/java/xalan-j2-serializer.jar  
> >       compiled Java class data, version 49.0 (Java 1.5) 
> > So it looks the problem is with jaxp_parser_impl.jar which was compiled using 1.6 as target. I
> > see it comes from:
> > 
> > $ rpm -q --whatprovides /usr/share/java/jaxp_parser_impl.jar
> > xerces-j2-2.9.0-3.fc13.noarc
> > 
> > But from Apache Xerces J2 web site:
> > http://xerces.apache.org/xerces2-j/faq-general.html#faq-11
> > "What JDK level is required for Xerces?    
> > As of version 2.6.2, Xerces requires JDK 1.2 or later to run and also requires JDK 1.2 or later
> > to build the source code."
> > 
> > Questions:
> > - What is class data version 45.3 (from log4j.jar)?
> > - How to install (from Fedora or JPackage repos) an jaxp_parser_impl.jar / Xerces J2 complied
> > for JDK 5?
> > - How it be that ant runs fine using gij which in theory supports only Java 5?
> > 
> > 
> > []s, Fernando Lozano
> > 
> > 
> > > Hi,
> > > 
> > > I'm using Fedora 13 x86_64, not 12. On Fedora 11 there where no problems, but I skipped F12.
> > > 
> > > It looks like something related to XML parser, see the output of ant -diagnostics.
> > > 
> > > ------- Ant diagnostics report -------
> > > Apache Ant version 1.7.1 compiled on April 16 2010
> > > 
> > > -------------------------------------------
> > >  Implementation Version
> > > -------------------------------------------
> > > core tasks     : 1.7.1
> > > optional tasks : not available
> > > 
> > > -------------------------------------------
> > >  ANT PROPERTIES
> > > -------------------------------------------
> > > ant.version: Apache Ant version 1.7.1 compiled on April 16 2010
> > > ant.java.version: 1.5
> > > ant.core.lib: /usr/share/java/ant-1.7.1.jar
> > > ant.home: /usr/share/ant
> > > 
> > > -------------------------------------------
> > >  ANT_HOME/lib jar listing
> > > -------------------------------------------
> > > ant.home: /usr/share/ant
> > > ant-commons-logging.jar (4031 bytes)
> > > ant-javamail.jar (7163 bytes)
> > > ant-nodeps.jar (438618 bytes)
> > > ant-launcher.jar (12243 bytes)
> > > ant-swing.jar (6772 bytes)
> > > ant-bootstrap.jar (19013 bytes)
> > > ant-jdepend.jar (8307 bytes)
> > > ant-junit.jar (94995 bytes)
> > > ant-apache-regexp.jar (3772 bytes)
> > > ant-apache-log4j.jar (3042 bytes)
> > > ant-trax.jar (6927 bytes)
> > > ant.jar (1339582 bytes)
> > > ant-apache-bsf.jar (4021 bytes)
> > > ant-commons-net.jar (47981 bytes)
> > > ant-apache-oro.jar (40216 bytes)
> > > ant-apache-bcel.jar (8796 bytes)
> > > ant-antlr.jar (5927 bytes)
> > > ant-apache-resolver.jar (4060 bytes)
> > > ant-jsch.jar (31458 bytes)
> > > 
> > > -------------------------------------------
> > >  USER_HOME/.ant/lib jar listing
> > > -------------------------------------------
> > > user.home: /home/lozano
> > > No such directory.
> > > 
> > > -------------------------------------------
> > >  Tasks availability
> > > -------------------------------------------
> > > image : Not Available (the implementation class is not present)
> > > wlrun : Not Available (the implementation class is not present)
> > > stlist : Not Available (the implementation class is not present)
> > > netrexxc : Not Available (the implementation class is not present)
> > > starteam : Not Available (the implementation class is not present)
> > > stylebook : Not Available (the implementation class is not present)
> > > stlabel : Not Available (the implementation class is not present)
> > > stcheckin : Not Available (the implementation class is not present)
> > > stcheckout : Not Available (the implementation class is not present)
> > > ejbc : Not Available (the implementation class is not present)
> > > wlstop : Not Available (the implementation class is not present)
> > > sound : Not Available (the implementation class is not present)
> > > ddcreator : Not Available (the implementation class is not present)
> > > A task being missing/unavailable should only matter if you are trying to use it
> > > 
> > > -------------------------------------------
> > >  org.apache.env.Which diagnostics
> > > -------------------------------------------
> > > Not available.
> > > Download it at http://xml.apache.org/commons/
> > > 
> > > -------------------------------------------
> > >  XML Parser information
> > > -------------------------------------------
> > > Bad version number in .class file
> > > 
> > > 
> > > 
> > > > Hi,
> > > > 
> > > > > $ ant -v
> > > > > Apache Ant version 1.7.1 compiled on April 16 2010
> > > > > Buildfile: build.xml
> > > > > Detected Java version: 1.5 in: /usr/lib/jvm/java-1.5.0-sun-1.5.0.22/jre
> > > > > Detected OS: Linux
> > > > > 
> > > > > BUILD FAILED
> > > > > java.lang.UnsupportedClassVersionError: Bad version number in .class file
> > > > 
> > > > On Fedora 12 x86_64 with OpenJDK I get:
> > > > 
> > > > $ ant -v
> > > > Apache Ant version 1.7.1 compiled on August 13 2009
> > > > Buildfile: build.xml does not exist!
> > > > Build failed
> > > > 
> > > > and looking in ant.jar, I see, for example:
> > > > 
> > > > $ file org/apache/tools/ant/BuildEvent.class 
> > > > org/apache/tools/ant/BuildEvent.class: compiled Java class data, version 46.0 (Java 1.2)
> > > > 
> > > > so it doesn't look like the bytecode is too new.  I suggest trying to
> > > > get more information which class is causing the
> > > > UnsupportedClassVersionError and/or looking at all .class files in
> > > > /usr/share/java/ant.jar (and/or the other ant JARs).
> > > > 
> > > > Andrew



More information about the java-devel mailing list