Hi folks, Thanks to the ManifoldCF SDK, I found another issue with the Maven build. Steps to reproduce the issue with the Manifold SDK:
1. Clone the ManifoldCF SDK project from the following URL: git clone https://github.com/OpenPj/manifoldcf-sdk.git 2. Remove row 27 from the run.sh script, this line is including the hotfix for the hadoop version upgrading it to the latest version 3.3.6. 3. Run the following command in order to download the ManifoldCF source code and run the Ant and Maven build process in a Docker container based on Maven 3.9.5 and OpenJDK Temurin 11This in order to install locally all the Maven dependencies needed to implement custom extensions / connectors. The Docker Volume includes the entire Maven repo used by the ManifoldCF build process and it will be copied in the SDK target folder and configured in order to compile your Java Custom code: ./run.sh init 2.26 ga The current version of the SDK includes the sep instruction to fix all the build problems described here: https://issues.apache.org/jira/browse/CONNECTORS-1750 These issues are also resolved in ManifoldCF main trunk but still present in the latest previous release packages (source code packages). I have to confess that I don't know if this issue is also included in other releases. The SDK is returning the following error that should be related to the Hadoop Annotations dependencies of Hadoop 2.6.0, a very old version of Hadoop that includes a JDK 1.6 dependency: jdk.tools:jdk.tools:jar:1.6. [ERROR] Failed to execute goal on project mcf-hdfs-connector: Could not resolve dependencies for project org.apache.manifoldcf:mcf-hdfs-connector:jar:2.26: The following artifacts could not be resolved: jdk.tools:jdk.tools:jar:1.6: Could not find artifact jdk.tools:jdk.tools:jar:1.6 at specified path /opt/java/openjdk/../lib/tools.jar -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal on project mcf-hdfs-connector: Could not resolve dependencies for project org.apache.manifoldcf:mcf-hdfs-connector:jar:2.26: The following artifacts could not be resolved: jdk.tools:jdk.tools:jar:1.6: Could not find artifact jdk.tools:jdk.tools:jar:1.6 at specified path /opt/java/openjdk/../lib/tools.jar at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies (LifecycleDependencyResolver.java:243) at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies (LifecycleDependencyResolver.java:136) at org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved (MojoExecutor.java:355) at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:313) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174) at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75) at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162) at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105) at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:193) at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:180) at java.util.concurrent.FutureTask.run (FutureTask.java:264) at java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:515) at java.util.concurrent.FutureTask.run (FutureTask.java:264) at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1128) at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:628) at java.lang.Thread.run (Thread.java:829) . . . Caused by: org.eclipse.aether.transfer.ArtifactNotFoundException: Could not find artifact jdk.tools:jdk.tools:jar:1.6 at specified path /opt/java/openjdk/../lib/tools.jar at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve (DefaultArtifactResolver.java:305) at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts (DefaultArtifactResolver.java:261) at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies (DefaultRepositorySystem.java:353) at org.apache.maven.project.DefaultProjectDependenciesResolver.resolve (DefaultProjectDependenciesResolver.java:182) at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies (LifecycleDependencyResolver.java:224) at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies (LifecycleDependencyResolver.java:136) at org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved (MojoExecutor.java:355) at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:313) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174) at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75) at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162) at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105) at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:193) at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:180) at java.util.concurrent.FutureTask.run (FutureTask.java:264) at java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:515) at java.util.concurrent.FutureTask.run (FutureTask.java:264) at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1128) at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:628) at java.lang.Thread.run (Thread.java:829) Trying to use the latest version of Hadoop 3.3.6, reverting to the original run.sh file, it solves this issue. I would like to use the updated version because even if we found a way to exclude this old dependency it sounds strange to use very old libraries requiring jdk 1.6. I'll create a specific ticket for this in order to discuss if it is possible to update to the latest version without any issues. Please let me know what you think. Thanks. Cheers, PG -- Piergiorgio