简体   繁体   中英

Ant junit on gentoo fails

I'm trying to build JOGL on gentoo and have installed all ant packages I could find, yet the build keeps failing with:

test.compile.javase.generic:
    [javac] Compiling 138 source files to /home/zubzub/git/jogl/build/test/build/classes
    [javac] /home/zubzub/git/jogl/src/test/com/jogamp/opengl/test/junit/jogl/offscreen/TestOffscreen01GLPBufferNEWT.java:305: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac]         org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(new String[] {
    [javac]                                                     ^
    [javac] /home/zubzub/git/jogl/src/test/com/jogamp/opengl/test/junit/jogl/offscreen/TestOffscreen02BitmapNEWT.java:140: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac]         org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(new String[] {
    [javac]                                                     ^
    [javac] /home/zubzub/git/jogl/src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestTexture01AWT.java:210: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac]         org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(new String[] {
    [javac]                                                     ^
    [javac] /home/zubzub/git/jogl/src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestTexture02AWT.java:156: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac]         org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(new String[] {
    [javac]                                                     ^
    [javac] /home/zubzub/git/jogl/src/test/com/jogamp/opengl/test/junit/newt/TestListenerCom01AWT.java:150: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac]         org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(new String[] {
    [javac]                                                     ^
    [javac] /home/zubzub/git/jogl/src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting01aSWT.java:205: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac]         org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(new String[] {
    [javac]                                                     ^
    [javac] /home/zubzub/git/jogl/src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting01bAWT.java:206: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac]         org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(new String[] {
    [javac]                                                     ^
    [javac] /home/zubzub/git/jogl/src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting01cAWT.java:265: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac]         org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(new String[] {
    [javac]                                                     ^
    [javac] /home/zubzub/git/jogl/src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting02NEWT.java:217: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac]         org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(new String[] {
    [javac]                                                     ^
    [javac] /home/zubzub/git/jogl/src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting04AWT.java:233: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac]         org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(new String[] {
    [javac]                                                     ^
    [javac] /home/zubzub/git/jogl/src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting04SWT.java:260: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac]         org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(new String[] {
    [javac]                                                     ^
    [javac] 11 errors

my ant folder:

zubzub@zubnix /usr/share/ant/lib $ ls -l
total 0
lrwxrwxrwx 1 root root 38 Apr 24 15:04 ant-antlr.jar -> /usr/share/ant-antlr/lib/ant-antlr.jar
lrwxrwxrwx 1 root root 50 Apr 24 15:13 ant-apache-bcel.jar -> /usr/share/ant-apache-bcel/lib/ant-apache-bcel.jar
lrwxrwxrwx 1 root root 48 Apr 24 15:16 ant-apache-bsf.jar -> /usr/share/ant-apache-bsf/lib/ant-apache-bsf.jar
lrwxrwxrwx 1 root root 52 Apr 24 15:07 ant-apache-log4j.jar -> /usr/share/ant-apache-log4j/lib/ant-apache-log4j.jar
lrwxrwxrwx 1 root root 48 Apr 24 15:14 ant-apache-oro.jar -> /usr/share/ant-apache-oro/lib/ant-apache-oro.jar
lrwxrwxrwx 1 root root 54 Apr 24 15:13 ant-apache-regexp.jar -> /usr/share/ant-apache-regexp/lib/ant-apache-regexp.jar
lrwxrwxrwx 1 root root 58 Apr 24 15:13 ant-apache-resolver.jar -> /usr/share/ant-apache-resolver/lib/ant-apache-resolver.jar
lrwxrwxrwx 1 root root 54 Apr 24 15:15 ant-apache-xalan2.jar -> /usr/share/ant-apache-xalan2/lib/ant-apache-xalan2.jar
lrwxrwxrwx 1 root root 41 Jul 28  2014 ant-bootstrap.jar -> /usr/share/ant-core/lib/ant-bootstrap.jar
lrwxrwxrwx 1 root root 58 Apr 24 15:13 ant-commons-logging.jar -> /usr/share/ant-commons-logging/lib/ant-commons-logging.jar
lrwxrwxrwx 1 root root 50 Apr 24 15:13 ant-commons-net.jar -> /usr/share/ant-commons-net/lib/ant-commons-net.jar
lrwxrwxrwx 1 root root 34 Apr 24 16:16 ant-jai.jar -> /usr/share/ant-jai/lib/ant-jai.jar
lrwxrwxrwx 1 root root 44 Apr 24 15:07 ant-javamail.jar -> /usr/share/ant-javamail/lib/ant-javamail.jar
lrwxrwxrwx 1 root root 42 Apr 24 15:13 ant-jdepend.jar -> /usr/share/ant-jdepend/lib/ant-jdepend.jar
lrwxrwxrwx 1 root root 34 Apr 24 16:15 ant-jmf.jar -> /usr/share/ant-jmf/lib/ant-jmf.jar
lrwxrwxrwx 1 root root 36 Apr 24 15:15 ant-jsch.jar -> /usr/share/ant-jsch/lib/ant-jsch.jar
lrwxrwxrwx 1 root root 38 Apr 24 15:19 ant-junit.jar -> /usr/share/ant-junit/lib/ant-junit.jar
lrwxrwxrwx 1 root root 40 Apr 24 15:52 ant-junit4.jar -> /usr/share/ant-junit4/lib/ant-junit4.jar
lrwxrwxrwx 1 root root 40 Jul 28  2014 ant-launcher.jar -> /usr/share/ant-core/lib/ant-launcher.jar
lrwxrwxrwx 1 root root 40 Apr 24 15:33 ant-nodeps.jar -> /usr/share/ant-nodeps/lib/ant-nodeps.jar
lrwxrwxrwx 1 root root 38 Apr 24 15:07 ant-swing.jar -> /usr/share/ant-swing/lib/ant-swing.jar
lrwxrwxrwx 1 root root 44 Apr 24 16:16 ant-testutil.jar -> /usr/share/ant-testutil/lib/ant-testutil.jar
lrwxrwxrwx 1 root root 36 Apr 24 15:06 ant-trax.jar -> /usr/share/ant-trax/lib/ant-trax.jar
lrwxrwxrwx 1 root root 31 Jul 28  2014 ant.jar -> /usr/share/ant-core/lib/ant.jar
lrwxrwxrwx 1 root root 27 Apr 24 16:41 junit.jar -> ../../junit-4/lib/junit.jar

ant home:

zubzub@zubnix /usr/share/ant/lib $ echo $ANT_HOME 
/usr/share/ant

I have no idea where to look next, or what is actually causing the failure. Is there anything else I can check?

I'm not experienced with building JOGL, but your build is failing during the compile phase which creates the classpath using various environment variables such as JUNIT_JAR and ANT_JUNIT . Have you got all these variables set?

I did get it to work in the end.

By not using any of Gentoo's provided ant packages. I just downloaded the ant package from the official website. Extracted it, created a symlink in my home dir to ~/.ant and removed all ant related packages that were previously emerged. Next I made sure junit4 jar could be found by ant by creating a symlink from the junit4 jar to ~/.ant/lib

Tada, now it works. Looks like gentoo's ant packaging is just fundamentally broken.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM