unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: "Gábor Boskovits" <boskovits@gmail.com>
To: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Cc: 31390@debbugs.gnu.org
Subject: bug#31390: java-hamcrest-all fails to build
Date: Wed, 9 May 2018 19:51:51 +0200	[thread overview]
Message-ID: <CAE4v=pjoC1FGFyyxTQTGwCKzSKU5-eUUhWmaUYqyAgLarris5g@mail.gmail.com> (raw)
In-Reply-To: <87r2mlf4z6.fsf@mdc-berlin.de>

[-- Attachment #1: Type: text/plain, Size: 13267 bytes --]

2018-05-09 13:22 GMT+02:00 Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>:

> Hi Guix,
>
> “java-hamcrest-all” fails to build with a curious error message.  It
> first builds hamcrest-core-1.3.jar and then complains about being unable
> to access “org/hamcrest/Description.class” from that jar.
>
> --8<---------------cut here---------------start------------->8---
> starting phase `build'
> Buildfile: /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-
> hamcrest-java-1.3/build.xml
>
> generator:
>     [mkdir] Created dir: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-generator-nodeps-1.3.jar.manifest
>     [mkdir] Created dir: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-generator-nodeps-1.3.jar.contents
>     [javac] Compiling 11 source files to /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-generator-nodeps-1.3.jar.contents
>     [javac]
>     [javac]           WARNING
>     [javac]
>     [javac] The -source switch defaults to 1.8 in JDK 1.8.
>     [javac] If you specify -target 1.5 you now must also specify -source
> 1.5.
>     [javac] Ant will implicitly add -source 1.5 for you.  Please change
> your build file.
>     [javac] warning: [options] bootstrap class path not set in conjunction
> with -source 1.5
>     [javac] warning: [options] source value 1.5 is obsolete and will be
> removed in a future release
>     [javac] warning: [options] target value 1.5 is obsolete and will be
> removed in a future release
>     [javac] warning: [options] To suppress warnings about obsolete
> options, use -Xlint:-options.
>     [javac] 4 warnings
>      [copy] Copying 1 file to /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-generator-nodeps-1.3.jar.contents
>       [jar] Building jar: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/
> hamcrest-generator-nodeps-1.3.jar
>      [copy] Copying 11 files to /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-generator-nodeps-1.3-sources.jar.contents
>       [jar] Building jar: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/
> hamcrest-generator-nodeps-1.3-sources.jar
>    [jarjar] Building jar: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/
> hamcrest-generator-1.3.jar
>      [copy] Copying 1 file to /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build
>
> core:
>     [mkdir] Created dir: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-core-1.3.jar.manifest
>     [mkdir] Created dir: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-core-1.3.jar.contents
>     [javac] Compiling 37 source files to /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-core-1.3.jar.contents
>     [javac]
>     [javac]           WARNING
>     [javac]
>     [javac] The -source switch defaults to 1.8 in JDK 1.8.
>     [javac] If you specify -target 1.5 you now must also specify -source
> 1.5.
>     [javac] Ant will implicitly add -source 1.5 for you.  Please change
> your build file.
>     [javac] warning: [options] bootstrap class path not set in conjunction
> with -source 1.5
>     [javac] warning: [options] source value 1.5 is obsolete and will be
> removed in a future release
>     [javac] warning: [options] target value 1.5 is obsolete and will be
> removed in a future release
>     [javac] warning: [options] To suppress warnings about obsolete
> options, use -Xlint:-options.
>     [javac] 4 warnings
>      [copy] Copying 1 file to /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-core-1.3.jar.contents
>       [jar] Building jar: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/hamcrest-core-1.3.jar
>      [copy] Copying 39 files to /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-core-1.3-sources.jar.contents
>       [jar] Building jar: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/
> hamcrest-core-1.3-sources.jar
>     [mkdir] Created dir: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-core/generated-code
>      [java] Generating org.hamcrest.CoreMatchers
>      [java]              [T] allOf(Iterable<Matcher<? super T>> matchers)
>      [java]              [T] allOf(Matcher<? super T> first, Matcher<?
> super T> second)
>      [java]              [T] allOf(Matcher<? super T> first, Matcher<?
> super T> second, Matcher<? super T> third)
>      [java]              [T] allOf(Matcher<? super T> first, Matcher<?
> super T> second, Matcher<? super T> third, Matcher<? super T> fourth)
>      [java]              [T] allOf(Matcher<? super T> first, Matcher<?
> super T> second, Matcher<? super T> third, Matcher<? super T> fourth,
> Matcher<? super T> fifth)
>      [java]              [T] allOf(Matcher<? super T> first, Matcher<?
> super T> second, Matcher<? super T> third, Matcher<? super T> fourth,
> Matcher<? super T> fifth, Matcher<? super T> sixth)
>      [java]              [T] allOf(Matcher<? super T>... matchers)
>      [java]              [T] anyOf(Iterable<Matcher<? super T>> matchers)
>      [java]              [T] anyOf(Matcher<T> first, Matcher<? super T>
> second)
>      [java]              [T] anyOf(Matcher<T> first, Matcher<? super T>
> second, Matcher<? super T> third)
>      [java]              [T] anyOf(Matcher<T> first, Matcher<? super T>
> second, Matcher<? super T> third, Matcher<? super T> fourth)
>      [java]              [T] anyOf(Matcher<T> first, Matcher<? super T>
> second, Matcher<? super T> third, Matcher<? super T> fourth, Matcher<?
> super T> fifth)
>      [java]              [T] anyOf(Matcher<T> first, Matcher<? super T>
> second, Matcher<? super T> third, Matcher<? super T> fourth, Matcher<?
> super T> fifth, Matcher<? super T> sixth)
>      [java]              [T] anyOf(Matcher<? super T>... matchers)
>      [java]            [LHS] both(Matcher<? super LHS> matcher)
>      [java]            [LHS] either(Matcher<? super LHS> matcher)
>      [java]              [T] describedAs(String description, Matcher<T>
> matcher, Object... values)
>      [java]    [Iterable<U>] everyItem(Matcher<U> itemMatcher)
>      [java]              [T] is(Class<T> type)
>      [java]              [T] is(T value)
>      [java]              [T] is(Matcher<T> matcher)
>      [java]              [T] isA(Class<T> type)
>      [java]         [Object] anything()
>      [java]         [Object] anything(String description)
>      [java] [Iterable<? super T>] hasItem(T item)
>      [java] [Iterable<? super T>] hasItem(Matcher<? super T> itemMatcher)
>      [java]    [Iterable<T>] hasItems(T... items)
>      [java]    [Iterable<T>] hasItems(Matcher<? super T>... itemMatchers)
>      [java]              [T] equalTo(T operand)
>      [java]              [T] any(Class<T> type)
>      [java]              [T] instanceOf(Class<?> type)
>      [java]              [T] not(T value)
>      [java]              [T] not(Matcher<T> matcher)
>      [java]         [Object] notNullValue()
>      [java]              [T] notNullValue(Class<T> type)
>      [java]         [Object] nullValue()
>      [java]              [T] nullValue(Class<T> type)
>      [java]              [T] sameInstance(T target)
>      [java]              [T] theInstance(T target)
>      [java]         [String] containsString(String substring)
>      [java]         [String] startsWith(String prefix)
>      [java]         [String] endsWith(String suffix)
>     [javac] Compiling 1 source file to /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-core-1.3.jar.contents
>     [javac]
>     [javac]           WARNING
>     [javac]
>     [javac] The -source switch defaults to 1.8 in JDK 1.8.
>     [javac] If you specify -target 1.5 you now must also specify -source
> 1.5.
>     [javac] Ant will implicitly add -source 1.5 for you.  Please change
> your build file.
>     [javac] warning: [options] bootstrap class path not set in conjunction
> with -source 1.5
>     [javac] warning: [options] source value 1.5 is obsolete and will be
> removed in a future release
>     [javac] warning: [options] target value 1.5 is obsolete and will be
> removed in a future release
>     [javac] warning: [options] To suppress warnings about obsolete
> options, use -Xlint:-options.
>     [javac] 4 warnings
>       [jar] Building jar: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/hamcrest-core-1.3.jar
>      [copy] Copying 1 file to /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-core-1.3-sources.jar.contents
>       [jar] Building jar: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/
> hamcrest-core-1.3-sources.jar
>
> library:
>     [mkdir] Created dir: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-library/generated-code
>     [mkdir] Created dir: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-library-1.3.jar.manifest
>     [mkdir] Created dir: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-library-1.3.jar.contents
>     [javac] Compiling 28 source files to /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/
> hamcrest-library-1.3.jar.contents
>     [javac]
>     [javac]           WARNING
>     [javac]
>     [javac] The -source switch defaults to 1.8 in JDK 1.8.
>     [javac] If you specify -target 1.5 you now must also specify -source
> 1.5.
>     [javac] Ant will implicitly add -source 1.5 for you.  Please change
> your build file.
>     [javac] warning: [options] bootstrap class path not set in conjunction
> with -source 1.5
>     [javac] warning: [options] source value 1.5 is obsolete and will be
> removed in a future release
>     [javac] warning: [options] target value 1.5 is obsolete and will be
> removed in a future release
>     [javac] warning: [options] To suppress warnings about obsolete
> options, use -Xlint:-options.
>     [javac] /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-
> hamcrest-java-1.3/hamcrest-library/src/main/java/org/
> hamcrest/beans/HasProperty.java:5: error: cannot access Description
>     [javac] import org.hamcrest.Description;
>     [javac]                    ^
>     [javac]   bad class file: /tmp/guix-build-java-hamcrest-
> all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/
> hamcrest-core-1.3.jar(org/hamcrest/Description.class)
>     [javac]     unable to access file: corrupted zip file
>     [javac]     Please remove or make sure it appears in the correct
> subdirectory of the classpath.
>
> BUILD FAILED
> /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-
> hamcrest-java-1.3/build.xml:59: The following error occurred while
> executing this line:
> /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-
> hamcrest-java-1.3/build.xml:287: Compile failed; see the compiler error
> output for details.
> --8<---------------cut here---------------end--------------->8---
>
> I have kept the build output and inspected the jar.  I can access the
> file without problems.  I don’t see corruption in the jar/zip file.
>
> --8<---------------cut here---------------start------------->8---
> $ file /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-
> hamcrest-java-1.3/build/hamcrest-core-1.3.jar
> /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-
> hamcrest-java-1.3/build/hamcrest-core-1.3.jar:
> Java archive data (JAR)
> $ unzip /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-
> hamcrest-java-1.3/build/hamcrest-core-1.3.jar
> $ file org/hamcrest/Description.class
> org/hamcrest/Description.class: compiled Java class data, version 49.0
> (Java 1.5)
> --8<---------------cut here---------------end--------------->8---
>
> Any ideas?
>
>
Yes, I have run into this already when doing the updates for java8. Debian
seems to have a patch for this here:
https://anonscm.debian.org/viewvc/pkg-java/trunk/libhamcrest-java/debian/patches/002-random-build-failure.patch?view=log

This bug was tracked here:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=738789

This failure is not deterministic, this is how it managed to get through my
filter :)

It seems that forcing not to use a parallel build is also a solution.

I haven't tried if we can use the patch as is.

WDYT?




> --
> Ricardo
>
>
>
>

[-- Attachment #2: Type: text/html, Size: 15677 bytes --]

  reply	other threads:[~2018-05-09 17:53 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-09 11:22 bug#31390: java-hamcrest-all fails to build Ricardo Wurmus
2018-05-09 17:51 ` Gábor Boskovits [this message]
2018-05-09 19:29   ` Ricardo Wurmus
2018-07-02 14:49 ` Ricardo Wurmus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAE4v=pjoC1FGFyyxTQTGwCKzSKU5-eUUhWmaUYqyAgLarris5g@mail.gmail.com' \
    --to=boskovits@gmail.com \
    --cc=31390@debbugs.gnu.org \
    --cc=ricardo.wurmus@mdc-berlin.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).