From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?G=C3=A1bor?= Boskovits Subject: bug#31390: java-hamcrest-all fails to build Date: Wed, 9 May 2018 19:51:51 +0200 Message-ID: References: <87r2mlf4z6.fsf@mdc-berlin.de> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="000000000000ce58d2056bc98e75" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:46456) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fGTH1-0003lK-R7 for bug-guix@gnu.org; Wed, 09 May 2018 13:53:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fGTGx-0002uh-1Q for bug-guix@gnu.org; Wed, 09 May 2018 13:53:07 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:47645) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fGTGw-0002uJ-RA for bug-guix@gnu.org; Wed, 09 May 2018 13:53:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1fGTGw-0003ZK-En for bug-guix@gnu.org; Wed, 09 May 2018 13:53:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87r2mlf4z6.fsf@mdc-berlin.de> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Ricardo Wurmus Cc: 31390@debbugs.gnu.org --000000000000ce58d2056bc98e75 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 2018-05-09 13:22 GMT+02:00 Ricardo Wurmus : > Hi Guix, > > =E2=80=9Cjava-hamcrest-all=E2=80=9D fails to build with a curious error m= essage. It > first builds hamcrest-core-1.3.jar and then complains about being unable > to access =E2=80=9Corg/hamcrest/Description.class=E2=80=9D 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 conjunctio= n > 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 conjunctio= n > 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> matchers) > [java] [T] allOf(Matcher first, Matcher super T> second) > [java] [T] allOf(Matcher first, Matcher super T> second, Matcher third) > [java] [T] allOf(Matcher first, Matcher super T> second, Matcher third, Matcher fourth) > [java] [T] allOf(Matcher first, Matcher super T> second, Matcher third, Matcher fourth, > Matcher fifth) > [java] [T] allOf(Matcher first, Matcher super T> second, Matcher third, Matcher fourth, > Matcher fifth, Matcher sixth) > [java] [T] allOf(Matcher... matchers) > [java] [T] anyOf(Iterable> matchers) > [java] [T] anyOf(Matcher first, Matcher > second) > [java] [T] anyOf(Matcher first, Matcher > second, Matcher third) > [java] [T] anyOf(Matcher first, Matcher > second, Matcher third, Matcher fourth) > [java] [T] anyOf(Matcher first, Matcher > second, Matcher third, Matcher fourth, Matcher super T> fifth) > [java] [T] anyOf(Matcher first, Matcher > second, Matcher third, Matcher fourth, Matcher super T> fifth, Matcher sixth) > [java] [T] anyOf(Matcher... matchers) > [java] [LHS] both(Matcher matcher) > [java] [LHS] either(Matcher matcher) > [java] [T] describedAs(String description, Matcher > matcher, Object... values) > [java] [Iterable] everyItem(Matcher itemMatcher) > [java] [T] is(Class type) > [java] [T] is(T value) > [java] [T] is(Matcher matcher) > [java] [T] isA(Class type) > [java] [Object] anything() > [java] [Object] anything(String description) > [java] [Iterable] hasItem(T item) > [java] [Iterable] hasItem(Matcher itemMatcher) > [java] [Iterable] hasItems(T... items) > [java] [Iterable] hasItems(Matcher... itemMatchers) > [java] [T] equalTo(T operand) > [java] [T] any(Class type) > [java] [T] instanceOf(Class type) > [java] [T] not(T value) > [java] [T] not(Matcher matcher) > [java] [Object] notNullValue() > [java] [T] notNullValue(Class type) > [java] [Object] nullValue() > [java] [T] nullValue(Class 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 conjunctio= n > 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 conjunctio= n > 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=E2=80=99t see corruption in the jar/zip fil= e. > > --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/pa= tches/002-random-build-failure.patch?view=3Dlog This bug was tracked here: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=3D738789 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 > > > > --000000000000ce58d2056bc98e75 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
2018= -05-09 13:22 GMT+02:00 Ricardo Wurmus <ricardo.wurmus@mdc-berli= n.de>:
H= i Guix,

=E2=80=9Cjava-hamcrest-all=E2=80=9D fails to build with a curious error mes= sage.=C2=A0 It
first builds hamcrest-core-1.3.jar and then complains about being unable to access =E2=80=9Corg/hamcrest/Description.class=E2=80=9D from that j= ar.

--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:
=C2=A0 =C2=A0 [mkdir] Created dir: /tmp/guix-build-java-hamcrest-all-1= .3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamcrest-gener= ator-nodeps-1.3.jar.manifest
=C2=A0 =C2=A0 [mkdir] Created dir: /tmp/guix-build-java-hamcrest-all-1= .3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamcrest-gener= ator-nodeps-1.3.jar.contents
=C2=A0 =C2=A0 [javac] Compiling 11 source files to /tmp/guix-build-java-ham= crest-all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamcrest-generator-nodeps-1.3.jar.contents
=C2=A0 =C2=A0 [javac]
=C2=A0 =C2=A0 [javac]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0WARNING
=C2=A0 =C2=A0 [javac]
=C2=A0 =C2=A0 [javac] The -source switch defaults to 1.8 in JDK 1.8.
=C2=A0 =C2=A0 [javac] If you specify -target 1.5 you now must also specify = -source 1.5.
=C2=A0 =C2=A0 [javac] Ant will implicitly add -source 1.5 for you.=C2=A0 Pl= ease change your build file.
=C2=A0 =C2=A0 [javac] warning: [options] bootstrap class path not set in co= njunction with -source 1.5
=C2=A0 =C2=A0 [javac] warning: [options] source value 1.5 is obsolete and w= ill be removed in a future release
=C2=A0 =C2=A0 [javac] warning: [options] target value 1.5 is obsolete and w= ill be removed in a future release
=C2=A0 =C2=A0 [javac] warning: [options] To suppress warnings about obsolet= e options, use -Xlint:-options.
=C2=A0 =C2=A0 [javac] 4 warnings
=C2=A0 =C2=A0 =C2=A0[copy] Copying 1 file to /tmp/guix-build-java-hamcrest-= all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamc= rest-generator-nodeps-1.3.jar.contents
=C2=A0 =C2=A0 =C2=A0 [jar] Building jar: /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/hamcrest-gene= rator-nodeps-1.3.jar
=C2=A0 =C2=A0 =C2=A0[copy] Copying 11 files to /tmp/guix-build-java-hamcres= t-all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/ha= mcrest-generator-nodeps-1.3-sources.jar.contents
=C2=A0 =C2=A0 =C2=A0 [jar] Building jar: /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/hamcrest-gene= rator-nodeps-1.3-sources.jar
=C2=A0 =C2=A0[jarjar] Building jar: /tmp/guix-build-java-hamcrest-all-= 1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/hamcrest-generator= -1.3.jar
=C2=A0 =C2=A0 =C2=A0[copy] Copying 1 file to /tmp/guix-build-java-hamcrest-= all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build

core:
=C2=A0 =C2=A0 [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
=C2=A0 =C2=A0 [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
=C2=A0 =C2=A0 [javac] Compiling 37 source files to /tmp/guix-build-java-ham= crest-all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamcrest-core-1.3.jar.contents
=C2=A0 =C2=A0 [javac]
=C2=A0 =C2=A0 [javac]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0WARNING
=C2=A0 =C2=A0 [javac]
=C2=A0 =C2=A0 [javac] The -source switch defaults to 1.8 in JDK 1.8.
=C2=A0 =C2=A0 [javac] If you specify -target 1.5 you now must also specify = -source 1.5.
=C2=A0 =C2=A0 [javac] Ant will implicitly add -source 1.5 for you.=C2=A0 Pl= ease change your build file.
=C2=A0 =C2=A0 [javac] warning: [options] bootstrap class path not set in co= njunction with -source 1.5
=C2=A0 =C2=A0 [javac] warning: [options] source value 1.5 is obsolete and w= ill be removed in a future release
=C2=A0 =C2=A0 [javac] warning: [options] target value 1.5 is obsolete and w= ill be removed in a future release
=C2=A0 =C2=A0 [javac] warning: [options] To suppress warnings about obsolet= e options, use -Xlint:-options.
=C2=A0 =C2=A0 [javac] 4 warnings
=C2=A0 =C2=A0 =C2=A0[copy] Copying 1 file to /tmp/guix-build-java-hamcrest-= all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamc= rest-core-1.3.jar.contents
=C2=A0 =C2=A0 =C2=A0 [jar] Building jar: /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/hamcrest-core= -1.3.jar
=C2=A0 =C2=A0 =C2=A0[copy] Copying 39 files to /tmp/guix-build-java-hamcres= t-all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/ha= mcrest-core-1.3-sources.jar.contents
=C2=A0 =C2=A0 =C2=A0 [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
=C2=A0 =C2=A0 [mkdir] Created dir: /tmp/guix-build-java-hamcrest-all-1= .3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamcrest-core/= generated-code
=C2=A0 =C2=A0 =C2=A0[java] Generating org.hamcrest.CoreMatchers
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] allOf(Iterable<Matcher<? super T>> matchers)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] allOf(Matcher<? super T> first, Matcher<? super T> second)<= br> =C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] allOf(Matcher<? super T> first, Matcher<? super T> second, = Matcher<? super T> third)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] allOf(Matcher<? super T> first, Matcher<? super T> second, = Matcher<? super T> third, Matcher<? super T> fourth)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] allOf(Matcher<? super T> first, Matcher<? super T> second, = Matcher<? super T> third, Matcher<? super T> fourth, Matcher<= ;? super T> fifth)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [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)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] allOf(Matcher<? super T>... matchers)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] anyOf(Iterable<Matcher<? super T>> matchers)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] anyOf(Matcher<T> first, Matcher<? super T> second)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] anyOf(Matcher<T> first, Matcher<? super T> second, Matcher&= lt;? super T> third)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] anyOf(Matcher<T> first, Matcher<? super T> second, Matcher&= lt;? super T> third, Matcher<? super T> fourth)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] anyOf(Matcher<T> first, Matcher<? super T> second, Matcher&= lt;? super T> third, Matcher<? super T> fourth, Matcher<? super= T> fifth)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] anyOf(Matcher<T> first, Matcher<? super T> second, Matcher&= lt;? super T> third, Matcher<? super T> fourth, Matcher<? super= T> fifth, Matcher<? super T> sixth)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] anyOf(Matcher<? super T>... matchers)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [LHS] b= oth(Matcher<? super LHS> matcher)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 [LHS] e= ither(Matcher<? super LHS> matcher)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] describedAs(String description, Matcher<T> matcher, Object... val= ues)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 [Iterable<U>] everyItem(Match= er<U> itemMatcher)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] is(Class<T> type)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] is(T value)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] is(Matcher<T> matcher)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] isA(Class<T> type)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[Object] anythi= ng()
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[Object] anythi= ng(String description)
=C2=A0 =C2=A0 =C2=A0[java] [Iterable<? super T>] hasItem(T item)
=C2=A0 =C2=A0 =C2=A0[java] [Iterable<? super T>] hasItem(Matcher<?= super T> itemMatcher)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 [Iterable<T>] hasItems(T... i= tems)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 [Iterable<T>] hasItems(Matche= r<? super T>... itemMatchers)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] equalTo(T operand)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] any(Class<T> type)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] instanceOf(Class<?> type)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] not(T value)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] not(Matcher<T> matcher)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[Object] notNul= lValue()
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] notNullValue(Class<T> type)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[Object] nullVa= lue()
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] nullValue(Class<T> type)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] sameInstance(T target)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = [T] theInstance(T target)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[String] contai= nsString(String substring)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[String] starts= With(String prefix)
=C2=A0 =C2=A0 =C2=A0[java]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0[String] endsWi= th(String suffix)
=C2=A0 =C2=A0 [javac] Compiling 1 source file to /tmp/guix-build-java-hamcr= est-all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/= hamcrest-core-1.3.jar.contents
=C2=A0 =C2=A0 [javac]
=C2=A0 =C2=A0 [javac]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0WARNING
=C2=A0 =C2=A0 [javac]
=C2=A0 =C2=A0 [javac] The -source switch defaults to 1.8 in JDK 1.8.
=C2=A0 =C2=A0 [javac] If you specify -target 1.5 you now must also specify = -source 1.5.
=C2=A0 =C2=A0 [javac] Ant will implicitly add -source 1.5 for you.=C2=A0 Pl= ease change your build file.
=C2=A0 =C2=A0 [javac] warning: [options] bootstrap class path not set in co= njunction with -source 1.5
=C2=A0 =C2=A0 [javac] warning: [options] source value 1.5 is obsolete and w= ill be removed in a future release
=C2=A0 =C2=A0 [javac] warning: [options] target value 1.5 is obsolete and w= ill be removed in a future release
=C2=A0 =C2=A0 [javac] warning: [options] To suppress warnings about obsolet= e options, use -Xlint:-options.
=C2=A0 =C2=A0 [javac] 4 warnings
=C2=A0 =C2=A0 =C2=A0 [jar] Building jar: /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/hamcrest-core= -1.3.jar
=C2=A0 =C2=A0 =C2=A0[copy] Copying 1 file to /tmp/guix-build-java-hamcrest-= all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamc= rest-core-1.3-sources.jar.contents
=C2=A0 =C2=A0 =C2=A0 [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:
=C2=A0 =C2=A0 [mkdir] Created dir: /tmp/guix-build-java-hamcrest-all-1= .3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamcrest-libra= ry/generated-code
=C2=A0 =C2=A0 [mkdir] Created dir: /tmp/guix-build-java-hamcrest-all-1= .3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamcrest-libra= ry-1.3.jar.manifest
=C2=A0 =C2=A0 [mkdir] Created dir: /tmp/guix-build-java-hamcrest-all-1= .3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamcrest-libra= ry-1.3.jar.contents
=C2=A0 =C2=A0 [javac] Compiling 28 source files to /tmp/guix-build-java-ham= crest-all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/temp/hamcrest-library-1.3.jar.contents
=C2=A0 =C2=A0 [javac]
=C2=A0 =C2=A0 [javac]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0WARNING
=C2=A0 =C2=A0 [javac]
=C2=A0 =C2=A0 [javac] The -source switch defaults to 1.8 in JDK 1.8.
=C2=A0 =C2=A0 [javac] If you specify -target 1.5 you now must also specify = -source 1.5.
=C2=A0 =C2=A0 [javac] Ant will implicitly add -source 1.5 for you.=C2=A0 Pl= ease change your build file.
=C2=A0 =C2=A0 [javac] warning: [options] bootstrap class path not set in co= njunction with -source 1.5
=C2=A0 =C2=A0 [javac] warning: [options] source value 1.5 is obsolete and w= ill be removed in a future release
=C2=A0 =C2=A0 [javac] warning: [options] target value 1.5 is obsolete and w= ill be removed in a future release
=C2=A0 =C2=A0 [javac] warning: [options] To suppress warnings about obsolet= e options, use -Xlint:-options.
=C2=A0 =C2=A0 [javac] /tmp/guix-build-java-hamcrest-all-1.3.drv-0/Java= Hamcrest-hamcrest-java-1.3/hamcrest-library/src/main/java/org/hamcrest/beans/HasProperty.java:5: error: cannot access Description<= br> =C2=A0 =C2=A0 [javac] import org.hamcrest.Description;
=C2=A0 =C2=A0 [javac]=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 ^
=C2=A0 =C2=A0 [javac]=C2=A0 =C2=A0bad class file: /tmp/guix-build-java-hamc= rest-all-1.3.drv-0/JavaHamcrest-hamcrest-java-1.3/build/hamc= rest-core-1.3.jar(org/hamcrest/Description.class)
=C2=A0 =C2=A0 [javac]=C2=A0 =C2=A0 =C2=A0unable to access file: corrupted z= ip file
=C2=A0 =C2=A0 [javac]=C2=A0 =C2=A0 =C2=A0Please remove or make sure it appe= ars 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 t= his 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.=C2=A0 I can access the<= br> file without problems.=C2=A0 I don=E2=80=99t see corruption in the jar/zip = file.

--8<---------------cut here---------------start------------->8--= -
$ file /tmp/guix-build-java-hamcrest-all-1.3.drv-0/JavaHamcrest-h= amcrest-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:


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.=C2= =A0

WDYT?


= =C2=A0
--
Ricardo




--000000000000ce58d2056bc98e75--