Bug 1885300 - F33 maven java.lang.NoSuchMethodError: java.nio.ByteBuffer.flip()Ljava/nio/ByteBuffer; when downloading dependency
Summary: F33 maven java.lang.NoSuchMethodError: java.nio.ByteBuffer.flip()Ljava/nio/By...
Keywords:
Status: CLOSED EOL
Alias: None
Product: Fedora
Classification: Fedora
Component: httpcomponents-client
Version: 33
Hardware: x86_64
OS: Linux
unspecified
unspecified
Target Milestone: ---
Assignee: Stuart D Gathman
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 1909897 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-10-05 14:46 UTC by jakob
Modified: 2021-11-30 18:02 UTC (History)
18 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-11-30 18:02:36 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description jakob 2020-10-05 14:46:19 UTC
Description of problem:


Version-Release number of selected component (if applicable):
❯ mvn -version
Apache Maven 3.6.3 (Red Hat 3.6.3-4)
Maven home: /usr/share/maven
Java version: 1.8.0_272-ea, vendor: Red Hat, Inc., runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b01-0.1.ea.fc33.x86_64/jre
Default locale: en_GB, platform encoding: UTF-8
OS name: "linux", version: "5.8.13-300.fc33.x86_64", arch: "amd64", family: "unix"

Steps to Reproduce:
1. set maven to use openjdk 1.8
2. run mvn clean install in a maven project
3. as soon as maven attempts to download a dependency it crashes

Actual results:

[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  14.042 s
[INFO] Finished at: 2020-10-05T16:36:55+02:00
[INFO] ------------------------------------------------------------------------
---------------------------------------------------
constituent[0]: file:/usr/share/maven/conf/logging/
constituent[1]: file:/usr/share/maven/lib/cdi-api-1.1.jar
constituent[2]: file:/usr/share/maven/lib/commons-cli-1.4.jar
constituent[3]: file:/usr/share/maven/lib/commons-codec-1.11.jar
constituent[4]: file:/usr/share/maven/lib/commons-codec.jar
constituent[5]: file:/usr/share/maven/lib/commons-io-2.5.jar
constituent[6]: file:/usr/share/maven/lib/commons-lang3-3.8.1.jar
constituent[7]: file:/usr/share/maven/lib/commons-logging.jar
constituent[8]: file:/usr/share/maven/lib/guava-27.1-jre.jar
constituent[9]: file:/usr/share/maven/lib/guice-4.2.1-no_aop.jar
constituent[10]: file:/usr/share/maven/lib/hawtjni-runtime-1.17.jar
constituent[11]: file:/usr/share/maven/lib/httpclient-4.5.12.jar
constituent[12]: file:/usr/share/maven/lib/httpcomponents_httpclient.jar
constituent[13]: file:/usr/share/maven/lib/httpcomponents_httpcore.jar
constituent[14]: file:/usr/share/maven/lib/httpcore-4.4.13.jar
constituent[15]: file:/usr/share/maven/lib/jansi-1.17.1.jar
constituent[16]: file:/usr/share/maven/lib/jansi-linux.jar
constituent[17]: file:/usr/share/maven/lib/jansi-native-1.8.jar
constituent[18]: file:/usr/share/maven/lib/javax.inject-1.jar
constituent[19]: file:/usr/share/maven/lib/jcl-over-slf4j-1.7.29.jar
constituent[20]: file:/usr/share/maven/lib/jsoup-1.12.1.jar
constituent[21]: file:/usr/share/maven/lib/jsr250-api-1.0.jar
constituent[22]: file:/usr/share/maven/lib/maven-artifact-3.6.3.jar
constituent[23]: file:/usr/share/maven/lib/maven-builder-support-3.6.3.jar
constituent[24]: file:/usr/share/maven/lib/maven-compat-3.6.3.jar
constituent[25]: file:/usr/share/maven/lib/maven-core-3.6.3.jar
constituent[26]: file:/usr/share/maven/lib/maven-embedder-3.6.3.jar
constituent[27]: file:/usr/share/maven/lib/maven-model-3.6.3.jar
constituent[28]: file:/usr/share/maven/lib/maven-model-builder-3.6.3.jar
constituent[29]: file:/usr/share/maven/lib/maven-plugin-api-3.6.3.jar
constituent[30]: file:/usr/share/maven/lib/maven-repository-metadata-3.6.3.jar
constituent[31]: file:/usr/share/maven/lib/maven-resolver-api-1.4.1.jar
constituent[32]: file:/usr/share/maven/lib/maven-resolver-connector-basic-1.4.1.jar
constituent[33]: file:/usr/share/maven/lib/maven-resolver-impl-1.4.1.jar
constituent[34]: file:/usr/share/maven/lib/maven-resolver-provider-3.6.3.jar
constituent[35]: file:/usr/share/maven/lib/maven-resolver-spi-1.4.1.jar
constituent[36]: file:/usr/share/maven/lib/maven-resolver-transport-wagon-1.4.1.jar
constituent[37]: file:/usr/share/maven/lib/maven-resolver-util-1.4.1.jar
constituent[38]: file:/usr/share/maven/lib/maven-settings-3.6.3.jar
constituent[39]: file:/usr/share/maven/lib/maven-settings-builder-3.6.3.jar
constituent[40]: file:/usr/share/maven/lib/maven-shared-utils-3.2.1.jar
constituent[41]: file:/usr/share/maven/lib/maven-slf4j-provider-3.6.3.jar
constituent[42]: file:/usr/share/maven/lib/maven-wagon_http-shared.jar
constituent[43]: file:/usr/share/maven/lib/org.eclipse.sisu.inject-0.3.4.jar
constituent[44]: file:/usr/share/maven/lib/org.eclipse.sisu.plexus-0.3.4.jar
constituent[45]: file:/usr/share/maven/lib/plexus-cipher-1.7.jar
constituent[46]: file:/usr/share/maven/lib/plexus-component-annotations-2.1.0.jar
constituent[47]: file:/usr/share/maven/lib/plexus-interpolation-1.25.jar
constituent[48]: file:/usr/share/maven/lib/plexus-sec-dispatcher-1.4.jar
constituent[49]: file:/usr/share/maven/lib/plexus-utils-3.2.1.jar
constituent[50]: file:/usr/share/maven/lib/slf4j-api-1.7.29.jar
constituent[51]: file:/usr/share/maven/lib/wagon-file-3.3.4.jar
constituent[52]: file:/usr/share/maven/lib/wagon-http-3.3.4.jar
constituent[53]: file:/usr/share/maven/lib/wagon-http-shared-3.4.1.jar
constituent[54]: file:/usr/share/maven/lib/wagon-provider-api-3.3.4.jar
---------------------------------------------------
Exception in thread "main" java.lang.NoSuchMethodError: java.nio.ByteBuffer.flip()Ljava/nio/ByteBuffer;
	at org.apache.http.client.utils.URLEncodedUtils.urlDecode(URLEncodedUtils.java:682)
	at org.apache.http.client.utils.URLEncodedUtils.parsePathSegments(URLEncodedUtils.java:364)
	at org.apache.http.client.utils.URIBuilder.parsePath(URIBuilder.java:118)
	at org.apache.http.client.utils.URIBuilder.digestURI(URIBuilder.java:197)
	at org.apache.http.client.utils.URIBuilder.<init>(URIBuilder.java:91)
	at org.apache.http.client.utils.URIUtils.rewriteURI(URIUtils.java:206)
	at org.apache.http.client.utils.URIUtils.rewriteURIForRoute(URIUtils.java:319)
	at org.apache.http.impl.execchain.ProtocolExec.rewriteRequestURI(ProtocolExec.java:96)
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:133)
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
	at org.apache.maven.wagon.shared.http.AbstractHttpClientWagon.execute(AbstractHttpClientWagon.java:1005)
	at org.apache.maven.wagon.shared.http.AbstractHttpClientWagon.fillInputData(AbstractHttpClientWagon.java:1162)
	at org.apache.maven.wagon.shared.http.AbstractHttpClientWagon.fillInputData(AbstractHttpClientWagon.java:1140)
	at org.apache.maven.wagon.StreamWagon.getInputStream(StreamWagon.java:126)
	at org.apache.maven.wagon.StreamWagon.getIfNewer(StreamWagon.java:88)
	at org.apache.maven.wagon.StreamWagon.get(StreamWagon.java:61)
	at org.eclipse.aether.transport.wagon.WagonTransporter$GetTaskRunner.run(WagonTransporter.java:567)
	at org.eclipse.aether.transport.wagon.WagonTransporter.execute(WagonTransporter.java:435)
	at org.eclipse.aether.transport.wagon.WagonTransporter.get(WagonTransporter.java:412)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector$GetTaskRunner.runTask(BasicRepositoryConnector.java:457)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run(BasicRepositoryConnector.java:364)
	at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:75)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExecutor.execute(BasicRepositoryConnector.java:644)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector.get(BasicRepositoryConnector.java:235)
	at org.eclipse.aether.internal.impl.DefaultMetadataResolver$ResolveTask.run(DefaultMetadataResolver.java:573)
	at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:75)
	at org.eclipse.aether.internal.impl.DefaultMetadataResolver$1.execute(DefaultMetadataResolver.java:494)
	at org.eclipse.aether.internal.impl.DefaultMetadataResolver.resolve(DefaultMetadataResolver.java:350)
	at org.eclipse.aether.internal.impl.DefaultMetadataResolver.resolveMetadata(DefaultMetadataResolver.java:181)
	at org.apache.maven.repository.internal.DefaultVersionRangeResolver.getVersions(DefaultVersionRangeResolver.java:198)
	at org.apache.maven.repository.internal.DefaultVersionRangeResolver.resolveVersionRange(DefaultVersionRangeResolver.java:148)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.cachedResolveRangeResult(DefaultDependencyCollector.java:622)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:395)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:365)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.process(DefaultDependencyCollector.java:352)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.doRecurse(DefaultDependencyCollector.java:509)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:461)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:365)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.process(DefaultDependencyCollector.java:352)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.doRecurse(DefaultDependencyCollector.java:509)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:461)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:365)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.process(DefaultDependencyCollector.java:352)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.doRecurse(DefaultDependencyCollector.java:509)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:461)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:365)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.process(DefaultDependencyCollector.java:352)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.doRecurse(DefaultDependencyCollector.java:509)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:461)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:365)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.process(DefaultDependencyCollector.java:352)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.doRecurse(DefaultDependencyCollector.java:509)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:461)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:365)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.process(DefaultDependencyCollector.java:352)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.doRecurse(DefaultDependencyCollector.java:509)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:461)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:365)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.process(DefaultDependencyCollector.java:352)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.doRecurse(DefaultDependencyCollector.java:509)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:461)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:365)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.process(DefaultDependencyCollector.java:352)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.doRecurse(DefaultDependencyCollector.java:509)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:461)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:365)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.process(DefaultDependencyCollector.java:352)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:254)
	at org.eclipse.aether.internal.impl.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:284)
	at org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:169)
	at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies(LifecycleDependencyResolver.java:243)
	at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies(LifecycleDependencyResolver.java:147)
	at org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved(MojoExecutor.java:248)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:202)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
	at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
	at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
	at org.apache.maven.cli.MavenCli.execute(MavenCli.java:957)
	at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:289)
	at org.apache.maven.cli.MavenCli.main(MavenCli.java:193)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225)
	at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406)
	at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347)

Expected results:

mvn clean install finishes successfully

Additional info:

I believe this is cause by a java 8 / 11 conflict.
If I use the binary directly downloaded from apache the command works as expected.

Comment 1 Mikolaj Izdebski 2020-10-05 15:17:04 UTC
The root cause of this is ABI incompatibility between OpenJDK 11 and 8. The code is compiled with OpenJDK 11 and targets Java 8, however due to ABI incompatibility, it doesn't actually run on OpenJDK 8.
The same issue affected modular Maven (originally reported as bug #1781260) and it was fixed by building Maven and all dependencies with OpenJDK 8 (bug #1782282).

Comment 2 Christopher Tubbs 2020-10-05 17:21:49 UTC
It seems to me that building with the `-release 8` option should work also.

Comment 3 Fabio Valentini 2020-10-15 11:14:15 UTC
Would running `%mvn_build` with `-- -Dmaven.compiler.release=1.8` be enough to fix this?
Or do we actually need to build against java-1.8.0-openjdk?

Comment 4 Christopher Tubbs 2020-10-15 12:55:40 UTC
(In reply to Fabio Valentini from comment #3)
> Would running `%mvn_build` with `-- -Dmaven.compiler.release=1.8` be enough
> to fix this?
> Or do we actually need to build against java-1.8.0-openjdk?

The ByteBuffer error is a very common error, from what I've seen, and is almost always fixed by setting the release flag, so setting `-Dmaven.compiler.release=8` should be sufficient. But, one would need to try to be sure.

Comment 5 Fabio Valentini 2020-10-15 13:17:32 UTC
We can try with this:
https://src.fedoraproject.org/rpms/maven/pull-request/26

Comment 6 jakob 2020-10-21 19:27:48 UTC
Is there anything blocking this PR from being merged, can I help test it?

Comment 7 Fabio Valentini 2020-10-21 19:44:11 UTC
I was waiting to get feedback on the PR from somebody else ... but I made builds that have the proposed fix available here:
https://copr.fedorainfracloud.org/coprs/decathorpe/maven-fedora-33-openjdk-8/
It would be great if you could confirm if installing maven from this repo fixes the issue for you.

Comment 8 jakob 2020-10-22 19:12:54 UTC
Same issue if I install it from your copr.

Comment 9 Fabio Valentini 2020-10-22 19:32:25 UTC
Can somebody verify if I made a stupid mistake or if building with -release 8 really isn't enough in this case?

Comment 10 Mikolaj Izdebski 2020-10-23 09:57:36 UTC
Runtime dependencies of Maven need to be built with -release 8, or with OpenJKD 8, not just maven package itself. In this particular case, httpcomponents-client needs to be rebuilt. In general, to be safe, all runtime dependencies of Maven should be built this way. Rebuilding just httpcomponents-client may fix the exact issue reported in this bug, but may leave other similar hidden until someone encounters them in another dependency of Maven.

Comment 11 Fabio Valentini 2020-10-23 10:14:12 UTC
Thanks for checking, reassigning to httpcomponents-client.

Comment 12 suiwenfeng 2020-11-18 09:13:24 UTC
Same issue after upgrade F33

Comment 13 suiwenfeng 2020-11-18 09:38:23 UTC
The issue solved by manually download and install the maven 3.6.3 binary. of course, you should remove the installed maven first.

Comment 14 jakob 2020-11-18 11:21:22 UTC
Manually downloading Maven is a temporary workaround and not a solution.

Comment 15 suiwenfeng 2020-11-19 09:44:30 UTC
I found java and javac are not the same version after upgrade to F33 as below.

>>>
[xxx@localhost ~]$ java -version
java version "1.8.0_261"
Java(TM) SE Runtime Environment (build 1.8.0_261-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.261-b12, mixed mode)
[xxx@localhost ~]$ javac -version
javac 11.0.9
<<<

so, another workaround is ...

>>>
[xxx@localhost ~]$ sudo update-alternatives --config java

There are 4 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
*  1           java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.9.11-0.fc33.x86_64/bin/java)
   2           java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b10-0.fc33.x86_64/jre/bin/java)
   3           java-latest-openjdk.x86_64 (/usr/lib/jvm/java-15-openjdk-15.0.1.9-1.rolling.fc33.x86_64/bin/java)
 + 4           /usr/java/jdk1.8.0_261-amd64/bin/java

Enter to keep the current selection[+], or type selection number: 4
<<<

Comment 16 Ivan Larionov 2020-12-02 15:52:17 UTC
(In reply to suiwenfeng from comment #15)
> I found java and javac are not the same version after upgrade to F33 as
> below.
> 
> >>>
> [xxx@localhost ~]$ java -version
> java version "1.8.0_261"
> Java(TM) SE Runtime Environment (build 1.8.0_261-b12)
> Java HotSpot(TM) 64-Bit Server VM (build 25.261-b12, mixed mode)
> [xxx@localhost ~]$ javac -version
> javac 11.0.9
> <<<
> 
> so, another workaround is ...
> 
> >>>
> [xxx@localhost ~]$ sudo update-alternatives --config java
> 
> There are 4 programs which provide 'java'.
> 
>   Selection    Command
> -----------------------------------------------
> *  1           java-11-openjdk.x86_64
> (/usr/lib/jvm/java-11-openjdk-11.0.9.11-0.fc33.x86_64/bin/java)
>    2           java-1.8.0-openjdk.x86_64
> (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b10-0.fc33.x86_64/jre/bin/java)
>    3           java-latest-openjdk.x86_64
> (/usr/lib/jvm/java-15-openjdk-15.0.1.9-1.rolling.fc33.x86_64/bin/java)
>  + 4           /usr/java/jdk1.8.0_261-amd64/bin/java
> 
> Enter to keep the current selection[+], or type selection number: 4
> <<<

This doesn't help

Comment 17 hcheruku 2020-12-10 18:55:18 UTC
Java config didn't work for me. Reinstalling maven did fix the issue for now.

Comment 18 Fabio Valentini 2020-12-27 14:44:59 UTC
*** Bug 1909897 has been marked as a duplicate of this bug. ***

Comment 19 mchoma 2021-01-05 09:51:21 UTC
Any estimate when this will be fixed? This is blocking us in one testing scenario.

Comment 20 Fabio Valentini 2021-01-05 10:52:43 UTC
Could you check if the bug is gone with httpcomponents-client from this scratch build?
https://koji.fedoraproject.org/koji/taskinfo?taskID=58964560
If so, I will push this change as an update to fedora 33 and rawhide.

Comment 21 mchoma 2021-01-05 14:02:19 UTC
Not sure if this is quewstion for me. When it comes to fedora, I am just user. I have no idea how to use custom component.

Comment 22 Kim Christensen 2021-01-15 07:26:12 UTC
Hi 

I've run into a somewhat similar issue during the deploy phase of maven. 

The project fails on my F33 workstation with: 
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy (default-deploy) on project sbpillar: Execution default-deploy of goal org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy failed: An API incompatibility was encountered while executing org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy: java.lang.NoSuchMethodError: java.nio.ByteBuffer.mark()Ljava/nio/ByteBuffer;
[ERROR] -----------------------------------------------------
[ERROR] realm =    plugin>org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/home/ktc/.m2/repository/org/apache/maven/plugins/maven-deploy-plugin/3.0.0-M1/maven-deploy-plugin-3.0.0-M1.jar
[ERROR] urls[1] = file:/home/ktc/.m2/repository/org/sonatype/sisu/sisu-inject-bean/1.4.2/sisu-inject-bean-1.4.2.jar
[ERROR] urls[2] = file:/home/ktc/.m2/repository/org/sonatype/sisu/sisu-guice/2.1.7/sisu-guice-2.1.7-noaop.jar
[ERROR] urls[3] = file:/home/ktc/.m2/repository/org/sonatype/aether/aether-util/1.7/aether-util-1.7.jar
[ERROR] urls[4] = file:/home/ktc/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.jar
[ERROR] urls[5] = file:/home/ktc/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.7.1/plexus-component-annotations-1.7.1.jar
[ERROR] urls[6] = file:/home/ktc/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
[ERROR] urls[7] = file:/home/ktc/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
[ERROR] urls[8] = file:/home/ktc/.m2/repository/org/apache/maven/shared/maven-artifact-transfer/0.10.0/maven-artifact-transfer-0.10.0.jar
[ERROR] urls[9] = file:/home/ktc/.m2/repository/org/apache/maven/shared/maven-common-artifact-filters/3.0.1/maven-common-artifact-filters-3.0.1.jar
[ERROR] urls[10] = file:/home/ktc/.m2/repository/org/apache/maven/shared/maven-shared-utils/3.1.0/maven-shared-utils-3.1.0.jar
[ERROR] urls[11] = file:/home/ktc/.m2/repository/commons-codec/commons-codec/1.11/commons-codec-1.11.jar
[ERROR] urls[12] = file:/home/ktc/.m2/repository/commons-io/commons-io/2.5/commons-io-2.5.jar
[ERROR] urls[13] = file:/home/ktc/.m2/repository/org/codehaus/plexus/plexus-utils/3.1.0/plexus-utils-3.1.0.jar
[ERROR] Number of foreign imports: 1
[ERROR] import: Entry[import  from realm ClassRealm[project>dk.statsbiblioteket.sbpillar:sbpillar:2.7-SNAPSHOT, parent: ClassRealm[maven.api, parent: null]]]

Installing the package suggested by Fabio does not change the outcome. 
My other workstation, still running F32 have no issue with running the same. 

So either the rebuild httpcomponents-client package does not fix the issue or my issue is a different one. 

Perhaps I should note that the JVM on both machines is: 
openjdk version "1.8.0_275"
OpenJDK Runtime Environment (build 1.8.0_275-b01)
OpenJDK 64-Bit Server VM (build 25.275-b01, mixed mode)


Regards
Kim

Comment 23 Kim Christensen 2021-02-17 08:16:36 UTC
I have tried to grab the httpcomponents-client from Fedora 32 and install that on my F33 workstation. 

That brings the error a step further now another library fails: 
mvn clean package
[INFO] Scanning for projects...
Downloading from sbprojects-nexus: https://sbprojects.statsbiblioteket.dk/nexus/content/groups/public/org/apache/maven/wagon/wagon-webdav-jackrabbit/2.0/wagon-webdav-jackrabbit-2.0.pom
---------------------------------------------------
constituent[0]: file:/usr/share/maven/conf/logging/
constituent[1]: file:/usr/share/maven/lib/maven-resolver-api-1.4.1.jar
constituent[2]: file:/usr/share/maven/lib/maven-plugin-api-3.6.3.jar
constituent[3]: file:/usr/share/maven/lib/maven-settings-builder-3.6.3.jar
constituent[4]: file:/usr/share/maven/lib/maven-resolver-transport-wagon-1.4.1.jar
constituent[5]: file:/usr/share/maven/lib/org.eclipse.sisu.inject-0.3.4.jar
constituent[6]: file:/usr/share/maven/lib/commons-codec-1.11.jar
constituent[7]: file:/usr/share/maven/lib/httpclient-4.5.12.jar
constituent[8]: file:/usr/share/maven/lib/maven-resolver-util-1.4.1.jar
constituent[9]: file:/usr/share/maven/lib/hawtjni-runtime-1.17.jar
constituent[10]: file:/usr/share/maven/lib/maven-embedder-3.6.3.jar
constituent[11]: file:/usr/share/maven/lib/httpcomponents_httpclient.jar
constituent[12]: file:/usr/share/maven/lib/httpcomponents_httpcore.jar
constituent[13]: file:/usr/share/maven/lib/wagon-http-3.3.4.jar
constituent[14]: file:/usr/share/maven/lib/plexus-component-annotations-2.1.0.jar
constituent[15]: file:/usr/share/maven/lib/wagon-provider-api-3.3.4.jar
constituent[16]: file:/usr/share/maven/lib/httpcore-4.4.13.jar
constituent[17]: file:/usr/share/maven/lib/jansi-native-1.8.jar
constituent[18]: file:/usr/share/maven/lib/maven-resolver-spi-1.4.1.jar
constituent[19]: file:/usr/share/maven/lib/maven-slf4j-provider-3.6.3.jar
constituent[20]: file:/usr/share/maven/lib/wagon-http-shared-3.4.1.jar
constituent[21]: file:/usr/share/maven/lib/maven-repository-metadata-3.6.3.jar
constituent[22]: file:/usr/share/maven/lib/javax.inject-1.jar
constituent[23]: file:/usr/share/maven/lib/cdi-api-1.1.jar
constituent[24]: file:/usr/share/maven/lib/maven-core-3.6.3.jar
constituent[25]: file:/usr/share/maven/lib/maven-artifact-3.6.3.jar
constituent[26]: file:/usr/share/maven/lib/commons-io-2.5.jar
constituent[27]: file:/usr/share/maven/lib/guava-27.1-jre.jar
constituent[28]: file:/usr/share/maven/lib/slf4j-api-1.7.29.jar
constituent[29]: file:/usr/share/maven/lib/maven-resolver-connector-basic-1.4.1.jar
constituent[30]: file:/usr/share/maven/lib/guice-4.2.1-no_aop.jar
constituent[31]: file:/usr/share/maven/lib/plexus-interpolation-1.25.jar
constituent[32]: file:/usr/share/maven/lib/maven-resolver-provider-3.6.3.jar
constituent[33]: file:/usr/share/maven/lib/commons-lang3-3.8.1.jar
constituent[34]: file:/usr/share/maven/lib/wagon-file-3.3.4.jar
constituent[35]: file:/usr/share/maven/lib/maven-compat-3.6.3.jar
constituent[36]: file:/usr/share/maven/lib/maven-wagon_http-shared.jar
constituent[37]: file:/usr/share/maven/lib/plexus-utils-3.2.1.jar
constituent[38]: file:/usr/share/maven/lib/jsr250-api-1.0.jar
constituent[39]: file:/usr/share/maven/lib/jansi-1.17.1.jar
constituent[40]: file:/usr/share/maven/lib/plexus-cipher-1.7.jar
constituent[41]: file:/usr/share/maven/lib/jsoup-1.12.1.jar
constituent[42]: file:/usr/share/maven/lib/commons-cli-1.4.jar
constituent[43]: file:/usr/share/maven/lib/jcl-over-slf4j-1.7.29.jar
constituent[44]: file:/usr/share/maven/lib/jansi-linux.jar
constituent[45]: file:/usr/share/maven/lib/org.eclipse.sisu.plexus-0.3.4.jar
constituent[46]: file:/usr/share/maven/lib/maven-settings-3.6.3.jar
constituent[47]: file:/usr/share/maven/lib/maven-resolver-impl-1.4.1.jar
constituent[48]: file:/usr/share/maven/lib/maven-model-3.6.3.jar
constituent[49]: file:/usr/share/maven/lib/maven-builder-support-3.6.3.jar
constituent[50]: file:/usr/share/maven/lib/maven-shared-utils-3.2.1.jar
constituent[51]: file:/usr/share/maven/lib/maven-model-builder-3.6.3.jar
constituent[52]: file:/usr/share/maven/lib/plexus-sec-dispatcher-1.4.jar
---------------------------------------------------
Exception in thread "main" java.lang.NoSuchMethodError: java.nio.ByteBuffer.mark()Ljava/nio/ByteBuffer;
	at org.eclipse.aether.connector.basic.ChecksumCalculator.update(ChecksumCalculator.java:202)
	at org.eclipse.aether.connector.basic.TransferTransportListener.transportProgressed(TransferTransportListener.java:90)
	at org.eclipse.aether.transport.wagon.WagonTransferListener.transferProgress(WagonTransferListener.java:64)
	at org.apache.maven.wagon.events.TransferEventSupport.fireTransferProgress(TransferEventSupport.java:121)
	at org.apache.maven.wagon.AbstractWagon.fireTransferProgress(AbstractWagon.java:664)
	at org.apache.maven.wagon.AbstractWagon.transfer(AbstractWagon.java:622)
	at org.apache.maven.wagon.AbstractWagon.getTransfer(AbstractWagon.java:396)
	at org.apache.maven.wagon.AbstractWagon.getTransfer(AbstractWagon.java:339)
	at org.apache.maven.wagon.AbstractWagon.getTransfer(AbstractWagon.java:308)
	at org.apache.maven.wagon.StreamWagon.getIfNewer(StreamWagon.java:97)
	at org.apache.maven.wagon.StreamWagon.get(StreamWagon.java:61)
	at org.eclipse.aether.transport.wagon.WagonTransporter$GetTaskRunner.run(WagonTransporter.java:567)
	at org.eclipse.aether.transport.wagon.WagonTransporter.execute(WagonTransporter.java:435)
	at org.eclipse.aether.transport.wagon.WagonTransporter.get(WagonTransporter.java:412)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector$GetTaskRunner.runTask(BasicRepositoryConnector.java:457)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run(BasicRepositoryConnector.java:364)
	at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:75)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExecutor.execute(BasicRepositoryConnector.java:644)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector.get(BasicRepositoryConnector.java:262)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads(DefaultArtifactResolver.java:499)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:401)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:229)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:207)
	at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:240)
	at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:171)
	at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:200)
	at org.eclipse.aether.internal.impl.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:284)
	at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolveInternal(DefaultPluginDependenciesResolver.java:205)
	at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolve(DefaultPluginDependenciesResolver.java:152)
	at org.apache.maven.plugin.internal.DefaultMavenPluginManager.resolveExtensionArtifacts(DefaultMavenPluginManager.java:911)
	at org.apache.maven.plugin.internal.DefaultMavenPluginManager.setupExtensionsRealm(DefaultMavenPluginManager.java:842)
	at org.apache.maven.project.DefaultProjectBuildingHelper.createProjectRealm(DefaultProjectBuildingHelper.java:197)
	at org.apache.maven.project.DefaultModelBuildingListener.buildExtensionsAssembled(DefaultModelBuildingListener.java:101)
	at org.apache.maven.model.building.ModelBuildingEventCatapult$1.fire(ModelBuildingEventCatapult.java:44)
	at org.apache.maven.model.building.DefaultModelBuilder.fireEvent(DefaultModelBuilder.java:1368)
	at org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:460)
	at org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:440)
	at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:618)
	at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:387)
	at org.apache.maven.graph.DefaultGraphBuilder.collectProjects(DefaultGraphBuilder.java:414)
	at org.apache.maven.graph.DefaultGraphBuilder.getProjectsForMavenReactor(DefaultGraphBuilder.java:405)
	at org.apache.maven.graph.DefaultGraphBuilder.build(DefaultGraphBuilder.java:82)
	at org.apache.maven.DefaultMaven.buildGraph(DefaultMaven.java:507)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:219)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
	at org.apache.maven.cli.MavenCli.execute(MavenCli.java:957)
	at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:289)
	at org.apache.maven.cli.MavenCli.main(MavenCli.java:193)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225)
	at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406)
	at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347)

I'll be happy to test solutions to this if that can help things along. 

Currently however development of software, that for some reason or another, needs Java 1.8 is utterly broken on Fedora 33. Currently I can to some extent workaround it by using my Fedora 32 workstation. However Fedora 32 is EOL in May and if this issue haven't been addressed prior to that I'm soon forced to look for alternatives.

Comment 24 Fabio Valentini 2021-02-17 21:01:36 UTC
Keeping the basic toolchain working on Java 8 is of course preferable, I agree.

It looks like this exception is caused in org.eclipse.aether.connector.basic.ChecksumCalculator, if I'm reading the stack trace correctly. Do you know which package that class is shipped with?

In the meantime, I'll try to run another analysis of all .class files in Fedora (which might take a while) ...

Comment 25 Jerry James 2021-02-17 21:45:37 UTC
(In reply to Fabio Valentini from comment #24)
> It looks like this exception is caused in
> org.eclipse.aether.connector.basic.ChecksumCalculator, if I'm reading the
> stack trace correctly. Do you know which package that class is shipped with?

It's in %{_javadir}/maven-resolver/maven-resolver-connector-basic.jar, which is owned by the maven-resolver-connector-basic package, a subpackage of maven-resolver.

Comment 26 Fabio Valentini 2021-02-17 21:48:48 UTC
Thanks, I'll try to fix maven-resolver next.

Until then, I have submitted an httpcomponents-client build with -release 8, which should fix the issue in that package:
https://bodhi.fedoraproject.org/updates/FEDORA-2021-b73b3a4dfe

Comment 27 Fabio Valentini 2021-02-17 22:07:50 UTC
Can you try with this maven-resolver build please?
https://bodhi.fedoraproject.org/updates/FEDORA-2021-121ed311dc

Comment 28 Kim Christensen 2021-02-18 06:38:20 UTC
Thanks for the builds. 

Preliminary the first build I tried now works. 

I'll try a few more to see if other issues pop up. Also I'll try a few Java 11 projects to verify they go through without issue.

Comment 29 Kim Christensen 2021-02-18 07:04:48 UTC
I've now been around 10 projects (Java 8 and Java 11 combined) and maven seem to be working just fine now. 

So from my point of view the two test builds seem to be working just fine.

Comment 30 Ben Cotton 2021-11-04 16:03:41 UTC
This message is a reminder that Fedora 33 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 33 on 2021-11-30.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '33'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 33 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 31 Ben Cotton 2021-11-30 18:02:36 UTC
Fedora 33 changed to end-of-life (EOL) status on 2021-11-30. Fedora 33 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.


Note You need to log in before you can comment on or make changes to this bug.