The tomcat 5.5 package will not emerge because one of the depencies will not compile. Changing system VM changes output but net results are the same. With sun JDK-1.5: >>> Emerging (1 of 50) dev-java/ant-owanttask-1.1-r1 to / >>> checking ebuild checksums ;-) >>> checking auxfile checksums ;-) >>> checking miscfile checksums ;-) >>> checking owanttask-1.1-gentoo.tar.bz2 ;-) >>> Unpacking source... >>> Unpacking owanttask-1.1-gentoo.tar.bz2 to /var/tmp/portage/ant-owanttask-1.1-r1/work >>> Source unpacked. >>> Compiling source in /var/tmp/portage/ant-owanttask-1.1-r1/work/owanttask-1.1 ... Buildfile: build.xml compile: [mkdir] Created dir: /var/tmp/portage/ant-owanttask-1.1-r1/work/owanttask-1.1/output/build [javac] Compiling 8 source files to /var/tmp/portage/ant-owanttask-1.1-r1/work/owanttask-1.1/output/build [javac] /var/tmp/portage/ant-owanttask-1.1-r1/work/owanttask-1.1/src/org/objectweb/util/ant/JavadocMultipleLink.java:88: as of release 1.5, 'enum' is a keyword, and may not be used as an identifier [javac] (try -source 1.4 or lower to use 'enum' as an identifier) [javac] for(Enumeration enum = v.elements(); enum.hasMoreElements();) { [javac] ^ [javac] /var/tmp/portage/ant-owanttask-1.1-r1/work/owanttask-1.1/src/org/objectweb/util/ant/JavadocMultipleLink.java:88: as of release 1.5, 'enum' is a keyword, and may not be used as an identifier [javac] (try -source 1.4 or lower to use 'enum' as an identifier) [javac] for(Enumeration enum = v.elements(); enum.hasMoreElements();) { [javac] ^ [javac] /var/tmp/portage/ant-owanttask-1.1-r1/work/owanttask-1.1/src/org/objectweb/util/ant/JavadocMultipleLink.java:89: as of release 1.5, 'enum' is a keyword, and may not be used as an identifier [javac] (try -source 1.4 or lower to use 'enum' as an identifier) [javac] File current = new File((File) enum.nextElement(), [javac] ^ [javac] /var/tmp/portage/ant-owanttask-1.1-r1/work/owanttask-1.1/src/org/objectweb/util/ant/JavadocMultipleLink.java:106: as of release 1.5, 'enum' is a keyword, and may not be used as an identifier [javac] (try -source 1.4 or lower to use 'enum' as an identifier) [javac] for(Enumeration enum = v.elements(); enum.hasMoreElements();) { [javac] ^ [javac] /var/tmp/portage/ant-owanttask-1.1-r1/work/owanttask-1.1/src/org/objectweb/util/ant/JavadocMultipleLink.java:106: as of release 1.5, 'enum' is a keyword, and may not be used as an identifier [javac] (try -source 1.4 or lower to use 'enum' as an identifier) [javac] for(Enumeration enum = v.elements(); enum.hasMoreElements();) { [javac] ^ [javac] /var/tmp/portage/ant-owanttask-1.1-r1/work/owanttask-1.1/src/org/objectweb/util/ant/JavadocMultipleLink.java:107: as of release 1.5, 'enum' is a keyword, and may not be used as an identifier [javac] (try -source 1.4 or lower to use 'enum' as an identifier) [javac] new File((File) enum.nextElement(), [javac] ^ [javac] 6 errors BUILD FAILED With Blackdown JVM: >>> Emerging (1 of 50) dev-java/ant-owanttask-1.1-r1 to / >>> checking ebuild checksums ;-) >>> checking auxfile checksums ;-) >>> checking miscfile checksums ;-) >>> checking owanttask-1.1-gentoo.tar.bz2 ;-) >>> Unpacking source... >>> Unpacking owanttask-1.1-gentoo.tar.bz2 to /var/tmp/portage/ant-owanttask-1.1-r1/work >>> Source unpacked. >>> Compiling source in /var/tmp/portage/ant-owanttask-1.1-r1/work/owanttask-1.1 ... Buildfile: build.xml BUILD FAILED java.lang.UnsupportedClassVersionError: org/xml/sax/ext/Attributes2 (Unsupported major.minor version 49.0) at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:539) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123) at java.net.URLClassLoader.defineClass(URLClassLoader.java:251) at java.net.URLClassLoader.access$100(URLClassLoader.java:55) at java.net.URLClassLoader$1.run(URLClassLoader.java:194) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:187) at java.lang.ClassLoader.loadClass(ClassLoader.java:289) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274) at java.lang.ClassLoader.loadClass(ClassLoader.java:235) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302) at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:539) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123) at java.net.URLClassLoader.defineClass(URLClassLoader.java:251) at java.net.URLClassLoader.access$100(URLClassLoader.java:55) at java.net.URLClassLoader$1.run(URLClassLoader.java:194) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:187) at java.lang.ClassLoader.loadClass(ClassLoader.java:289) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274) at java.lang.ClassLoader.loadClass(ClassLoader.java:235) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302) at org.apache.xerces.parsers.AbstractSAXParser.this(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.<init>(Unknown Source) at org.apache.xerces.parsers.SAXParser.<init>(Unknown Source) at org.apache.xerces.parsers.SAXParser.<init>(Unknown Source) at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.<init>(Unknown Source) at org.apache.xerces.jaxp.SAXParserImpl.<init>(Unknown Source) at org.apache.xerces.jaxp.SAXParserFactoryImpl.newSAXParser(Unknown Source) at org.apache.tools.ant.util.JAXPUtils.newSAXParser(JAXPUtils.java:205) at org.apache.tools.ant.util.JAXPUtils.getNamespaceXMLReader(JAXPUtils.java:163) at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:193) at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:140) at org.apache.tools.ant.ProjectHelper.configureProject(ProjectHelper.java:91) at org.apache.tools.ant.Main.runBuild(Main.java:653) at org.apache.tools.ant.Main.startAnt(Main.java:187) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67)
That's because you've unmasked Java 1.5, which has issues with the current build system. Fortunately for you, we're able to handle Java 1.5 in a sane manner now. Follow the Java upgrade guide: http://www.gentoo.org/proj/en/java/java-upgrade.xml
The "resolution" did not work. I have followed the upgrade doc and the problem seems to be with the source of the package ant-owanttask-1.1-r1. It uses "enum" as an identifier which is actually a keyword as of 1.5. Please advise
If you are getting errors with regards to 'enum', that means you are using a 1.5 JDK for your generation-1 VM. You _need_ to use a 1.4 JDK for your generation-1 VM, as the guide says.
I have set my VMs properly. #> java-config-2 -L 1) Blackdown JDK 1.4.2.03 [blackdown-jdk-1.4.2] (/usr/share/java-config-2/vm/blackdown-jdk-1.4.2) *) Sun JDK 1.5.0.07 [sun-jdk-1.5] (/usr/share/java-config-2/vm/sun-jdk-1.5) 3) Sun JRE 1.5.0.07 [sun-jre-bin-1.5] (/usr/share/java-config-2/vm/sun-jre-bin-1.5) #> java-config-1 -L [blackdown-jdk-1.4.2.03] "Blackdown JDK 1.4.2.03" (/etc/env.d/java/20blackdown-jdk-1.4.2.03) * I tried re-emerging tomcat and now I am still getting java.lang.UnsupportedClassVersionError. Before you tell me to run the /usr/bin/java-1.5-fixer, I have. It keeps failing on commons-httpclient and xml-commons-external with java.lang.UnsupportedClassVersionError. What is the solution to this?
Did you let java-1.5-fixer keep going? It can't really handle doing things in the right order, so there are times when it will fail because of the unsupported class version errors. In these cases, it will keep track of which packages failed, and try them again. In any event, I think this has gone beyond the initial scope of the bug, and isn't a bug per se, as much as it is a system issue... so, I recommend you take this to our IRC channel (#gentoo-java on freenode) or our mailing list (gentoo-java) to work through this.