Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

${maven.multiModuleProjectDirectory} is not resolved #1291

Open
blacelle opened this issue Mar 3, 2023 · 16 comments
Open

${maven.multiModuleProjectDirectory} is not resolved #1291

blacelle opened this issue Mar 3, 2023 · 16 comments

Comments

@blacelle
Copy link

blacelle commented Mar 3, 2023

I consider a multi-module project, with a maven-plugin configured with :${maven.multiModuleProjectDirectory}

https://github.com/solven-eu/cleanthat/blob/master/parent/pom.xml#L461

Since M2E - Maven Integration for Eclipse 2.2.0.20230228-2348 org.eclipse.m2e.feature.feature.group Eclipse.org - m2e, some maven plugin executions are triggered (while previously not), and they are not as easy as before to be deactiveted: it used to be doable through the context menu:

image

In addition of Eclipse getting slow seemingly due to these executions, I see ${maven.multiModuleProjectDirectory} is not resolved in Eclipse m2e.

Full stack:

Failed to execute mojo com.diffplug.spotless:spotless-maven-plugin:2.33.0:apply {execution: apply} (com.diffplug.spotless:spotless-maven-plugin:2.33.0:apply:apply:process-sources)

org.eclipse.core.runtime.CoreException: Failed to execute mojo com.diffplug.spotless:spotless-maven-plugin:2.33.0:apply {execution: apply}
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeMojo(MavenExecutionContext.java:340)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.lambda$0(MavenExecutionContext.java:291)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:374)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:275)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:290)
	at org.eclipse.m2e.core.project.configurator.MojoExecutionBuildParticipant.build(MojoExecutionBuildParticipant.java:57)
	at org.eclipse.m2e.core.internal.builder.MavenBuilderImpl.lambda$1(MavenBuilderImpl.java:139)
	at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:729)
	at org.eclipse.m2e.core.internal.builder.MavenBuilderImpl.build(MavenBuilderImpl.java:122)
	at org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:164)
	at org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:1)
	at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.lambda$1(MavenBuilder.java:109)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:374)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:228)
	at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.lambda$0(MavenBuilder.java:100)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:374)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:275)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:214)
	at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:83)
	at org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:192)
	at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:1020)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:247)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:303)
	at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:392)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
	at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:395)
	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:506)
	at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:454)
	at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:536)
	at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:161)
	at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:255)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution apply of goal com.diffplug.spotless:spotless-maven-plugin:2.33.0:apply failed: Unable to locate file with path: ${maven.multiModuleProjectDirectory}/build-tools/src/main/resources/style/eclipse.importorder
	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:148)
	at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeMojo(MavenExecutionContext.java:338)
	... 32 more
Caused by: java.lang.RuntimeException: Unable to locate file with path: ${maven.multiModuleProjectDirectory}/build-tools/src/main/resources/style/eclipse.importorder
	at com.diffplug.spotless.maven.FileLocator.locateFile(FileLocator.java:63)
	at com.diffplug.spotless.maven.java.ImportOrder.newFormatterStep(ImportOrder.java:41)
	at com.diffplug.spotless.maven.FormatterFactory.lambda$newFormatter$0(FormatterFactory.java:97)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
	at com.diffplug.spotless.maven.FormatterFactory.newFormatter(FormatterFactory.java:98)
	at com.diffplug.spotless.maven.FormattersHolder.create(FormattersHolder.java:42)
	at com.diffplug.spotless.maven.AbstractSpotlessMojo.execute(AbstractSpotlessMojo.java:220)
	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
	... 33 more
Caused by: org.codehaus.plexus.resource.loader.ResourceNotFoundException: Could not find resource '${maven.multiModuleProjectDirectory}/build-tools/src/main/resources/style/eclipse.importorder'.
	at org.codehaus.plexus.resource.DefaultResourceManager.getResource(DefaultResourceManager.java:182)
	at org.codehaus.plexus.resource.DefaultResourceManager.getResourceAsFile(DefaultResourceManager.java:100)
	at com.diffplug.spotless.maven.FileLocator.locateFile(FileLocator.java:61)
	... 47 more

@blacelle
Copy link
Author

blacelle commented Mar 3, 2023

Thanks @laeubi answering about the unexpected executions:

eclipse-m2e/m2e-wtp#23

Go to the pom, select the mojo execution you don't want (it should get an info icon) and select "disable ..." from the QuickFix.

As an alternative, you can configure the default behavior here: https://github.com/eclipse-m2e/m2e-core/blob/master/RELEASE_NOTES.md#mojos-without-a-mapping-are-now-executed-by-default-in-incremental-builds

@laeubi
Copy link
Member

laeubi commented Mar 3, 2023

@blacelle m2e now supports multi-module directory but it seems the property is not set, do you think you can provide a PR with a minimal reproducer in the maven.core.tests?

@laeubi
Copy link
Member

laeubi commented Mar 3, 2023

And if possible open a new issue so that we have a Quick-Fix for failed executions!

@blacelle
Copy link
Author

blacelle commented Mar 3, 2023

I tried importing m2e-core in my Eclipse setup (not fresh), but it is stuck on scanning folders:
image

OK, It needed a bunch of additional seconds.

mvn install from CLI is also quite slow to kick in:

m2e-core mvn install    
Apache Maven 3.8.3 (ff8e977a158738155dc465c6a97ffaf31982d739)
Maven home: /usr/local/Cellar/maven/3.8.3/libexec
Java version: 17.0.2, vendor: Eclipse Adoptium, runtime: /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
Default locale: en_FR, platform encoding: UTF-8
OS name: "mac os x", version: "13.2", arch: "x86_64", family: "mac"
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...

and again stuck quite some time after:

[INFO] Tycho Version:  4.0.0-SNAPSHOT (6347fd695c6bb183c333f4488d08b58caa77b43d)
[INFO] Tycho Resolver: maven
[INFO] Tycho Mode:     extension
[INFO] Tycho Builder:  maven

(I hope it will get faster after the initial execution)

@blacelle
Copy link
Author

blacelle commented Mar 3, 2023

The local build is encountering issues:

[ERROR] Cannot resolve project dependencies:
[ERROR]   Software being installed: org.eclipse.m2e.editor.lemminx 2.0.2.qualifier
[ERROR]   Missing requirement: org.eclipse.m2e.core 1.15.0.20200305-1308 requires 'osgi.bundle; org.eclipse.m2e.maven.runtime [1.15.0,1.16.0)' but it could not be found
[ERROR]   Missing requirement: org.eclipse.m2e.core 1.16.1.20201021-1639 requires 'osgi.bundle; org.eclipse.m2e.maven.runtime [1.16.0,1.17.0)' but it could not be found
[ERROR]   Missing requirement: org.eclipse.m2e.core 1.17.0.20201014-1513 requires 'osgi.bundle; org.eclipse.m2e.maven.runtime [1.16.0,2.0.0)' but it could not be found
[ERROR]   Missing requirement: org.eclipse.m2e.core 1.17.2.20201217-1350 requires 'osgi.bundle; org.eclipse.m2e.maven.runtime [1.16.0,2.0.0)' but it could not be found
[ERROR]   Missing requirement: org.eclipse.m2e.core 2.0.6.20230228-1526 requires 'osgi.bundle; org.eclipse.m2e.maven.runtime [3.8.6,4.0.0)' but it could not be found
[ERROR]   Cannot satisfy dependency: org.eclipse.m2e.editor.lemminx 2.0.2.qualifier depends on: osgi.bundle; org.eclipse.m2e.core 0.0.0
[ERROR] 
[ERROR] See https://wiki.eclipse.org/Tycho/Dependency_Resolution_Troubleshooting for help.
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] M2E Maven POM File Editor (Wild Web Developer, LemMinX, LS) 2.0.2-SNAPSHOT FAILURE [ 18.337 s]
[INFO] [bundle] M2E PDE Integration 2.0.300-SNAPSHOT ...... SKIPPED
[INFO] [bundle] M2E PDE Integration UI 2.0.200-SNAPSHOT ... SKIPPED
[INFO] [bundle] M2E PDE Connector 2.1.2-SNAPSHOT .......... SKIPPED
[INFO] [bundle] M2E JDT Annotation Processing Configurator Core 2.2.0-SNAPSHOT SKIPPED
[INFO] [bundle] M2E JDT Annotation Processing Configurator UI 2.0.300-SNAPSHOT SKIPPED
[INFO] [bundle] m2e connector for the mavenarchiver and pom properties 2.0.300-SNAPSHOT SKIPPED
[INFO] [bundle] M2E Testing Helpers 2.0.3-SNAPSHOT ........ SKIPPED
[INFO] [bundle] M2E Logback Appender and Configuration 2.1.100-SNAPSHOT SKIPPED
[INFO] [feature] M2E - POM Editor using LemMinX language server (includes Incubating components) 2.0.3-SNAPSHOT SKIPPED
[INFO] [feature] M2E - Maven Integration for Eclipse 2.2.0-SNAPSHOT SKIPPED
[INFO] [feature] M2E - SLF4J over Logback Logging 2.1.1-SNAPSHOT SKIPPED
[INFO] [feature] M2E - PDE Integration 2.2.0-SNAPSHOT ..... SKIPPED
[INFO] [feature] M2E - Complete Development Kit 2.2.0-SNAPSHOT SKIPPED
[INFO] Maven Integration for Eclipse Repository 2.1.0-SNAPSHOT SKIPPED
[INFO] [test-bundle] M2E Maven Integration for Eclipse Core Tests 2.0.0-SNAPSHOT SKIPPED
[INFO] M2E Maven Integration for Eclipse UI Tests 2.0.1-SNAPSHOT SKIPPED
[INFO] [test-bundle] M2E Binary Project Core Tests 2.0.1-SNAPSHOT SKIPPED
[INFO] [test-bundle] Tests for m2e multi-page editor 2.0.0-SNAPSHOT SKIPPED
[INFO] [test-bundle] M2E Maven POM File Editor using Wild Web Developer, Lemminx and Maven LS extension Tests 2.0.0-SNAPSHOT SKIPPED
[INFO] [test-bundle] M2E JDT Integration Tests 2.0.0-SNAPSHOT SKIPPED
[INFO] [test-bundle] M2E Maven Integration for Eclipse Profiles Core Tests 2.0.0-SNAPSHOT SKIPPED
[INFO] [test-bundle] m2e-apt Tests Plug-in 2.0.0-SNAPSHOT . SKIPPED
[INFO] M2E PDE Connector Tests 1.0.0-SNAPSHOT ............. SKIPPED
[INFO] [aggregator] products 2.1.0-SNAPSHOT ............... SKIPPED
[INFO] [product] M2Eclipse IDE 2.0.0 ...................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  58.088 s
[INFO] Finished at: 2023-03-03T10:59:36+04:00
[INFO] ------------------------------------------------------------------------
[WARNING] The requested profile "MiTrust" could not be activated because it does not exist.
[ERROR] Cannot resolve dependencies of MavenProject: org.eclipse.m2e:org.eclipse.m2e.editor.lemminx:2.0.2-SNAPSHOT @ /Users/blacelle/workspace3/m2e-core/org.eclipse.m2e.editor.lemminx/pom.xml: See log for details
org.eclipse.tycho.DependencyResolutionException: Cannot resolve dependencies of MavenProject: org.eclipse.m2e:org.eclipse.m2e.editor.lemminx:2.0.2-SNAPSHOT @ /Users/blacelle/workspace3/m2e-core/org.eclipse.m2e.editor.lemminx/pom.xml
    at org.eclipse.tycho.p2resolver.P2ResolverImpl.resolveDependencies (P2ResolverImpl.java:238)
    at org.eclipse.tycho.p2resolver.P2ResolverImpl.resolveTargetDependencies (P2ResolverImpl.java:123)
    at org.eclipse.tycho.p2resolver.P2DependencyResolver.doResolveDependencies (P2DependencyResolver.java:331)
    at org.eclipse.tycho.p2resolver.P2DependencyResolver.resolveDependencies (P2DependencyResolver.java:292)
    at org.eclipse.tycho.core.resolver.DefaultTychoResolver.resolveProject (DefaultTychoResolver.java:129)
    at org.eclipse.tycho.core.maven.TychoProjectExecutionListener.beforeProjectLifecycleExecution (TychoProjectExecutionListener.java:106)
    at org.apache.maven.lifecycle.internal.CompoundProjectExecutionListener.beforeProjectLifecycleExecution (CompoundProjectExecutionListener.java:52)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:114)
    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:972)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    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)
Caused by: org.eclipse.tycho.p2.resolver.ResolverException: See log for details
    at org.eclipse.tycho.p2resolver.ProjectorResolutionStrategy.resolve (ProjectorResolutionStrategy.java:95)
    at org.eclipse.tycho.p2resolver.AbstractResolutionStrategy.resolve (AbstractResolutionStrategy.java:54)
    at org.eclipse.tycho.p2resolver.P2ResolverImpl.resolveDependencies (P2ResolverImpl.java:231)
    at org.eclipse.tycho.p2resolver.P2ResolverImpl.resolveTargetDependencies (P2ResolverImpl.java:123)
    at org.eclipse.tycho.p2resolver.P2DependencyResolver.doResolveDependencies (P2DependencyResolver.java:331)
    at org.eclipse.tycho.p2resolver.P2DependencyResolver.resolveDependencies (P2DependencyResolver.java:292)
    at org.eclipse.tycho.core.resolver.DefaultTychoResolver.resolveProject (DefaultTychoResolver.java:129)
    at org.eclipse.tycho.core.maven.TychoProjectExecutionListener.beforeProjectLifecycleExecution (TychoProjectExecutionListener.java:106)
    at org.apache.maven.lifecycle.internal.CompoundProjectExecutionListener.beforeProjectLifecycleExecution (CompoundProjectExecutionListener.java:52)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:114)
    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:972)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    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)

@laeubi
Copy link
Member

laeubi commented Mar 3, 2023

@blacelle
Copy link
Author

blacelle commented Mar 3, 2023

Given org.eclipse.m2e.core.tests has no inner pom.xml, how can I build it and its ancestors ?

mvn install -am -pl :org.eclipse.m2e.core.tests does the job. How, opening only given projects in Eclipse seem not to resolve dependency (due to lack of pom.xml to help Eclipse).

https://github.com/eclipse-m2e/m2e-core/blob/master/CONTRIBUTING.md#prerequisites

Select Eclipse IDE for Eclipse Committers (use Product Version - latest to use the latest builds of Eclipse). Click Next .

Do you confirm I need a dedicated Eclipse to add an additional unitTest ? Ok you answered in the meantime. I might not be able to go through the whole process at the moment.

@laeubi
Copy link
Member

laeubi commented Mar 3, 2023

m2e is an eclipse project, so you can not really edit is with only a single project as it depends on different other eclipse plugins (not part of m2e) so you need at least an IDE with PDE support, set the target platform and import the m2e.core and m2e.core.tests, but using the proposed dev IDE is maybe the fastest path to success.

@blacelle
Copy link
Author

blacelle commented Mar 4, 2023

In the meantime of the unitTest, I still have mojo being unexpectly executed. I switch the flag to WARN (as I'm happy to see something is not optimal), but they mojo are still being executed:

image

If I switch to ignore: will it skip the execution, and will it just ignore the failures?

@blacelle
Copy link
Author

blacelle commented Mar 4, 2023

With CLI:

mvn install -pl :org.eclipse.m2e.core.tests fails with :

[ERROR] Cannot resolve project dependencies:
[ERROR]   Software being installed: org.eclipse.m2e.core.tests 2.0.0.qualifier
[ERROR]   Missing requirement: org.eclipse.m2e.core 1.15.0.20200305-1308 requires 'osgi.bundle; org.eclipse.m2e.maven.runtime [1.15.0,1.16.0)' but it could not be found
[ERROR]   Missing requirement: org.eclipse.m2e.core 1.16.1.20201021-1639 requires 'osgi.bundle; org.eclipse.m2e.maven.runtime [1.16.0,1.17.0)' but it could not be found
[ERROR]   Missing requirement: org.eclipse.m2e.core 1.17.0.20201014-1513 requires 'osgi.bundle; org.eclipse.m2e.maven.runtime [1.16.0,2.0.0)' but it could not be found
[ERROR]   Missing requirement: org.eclipse.m2e.core 1.17.2.20201217-1350 requires 'osgi.bundle; org.eclipse.m2e.maven.runtime [1.16.0,2.0.0)' but it could not be found
[ERROR]   Missing requirement: org.eclipse.m2e.core 2.0.6.20230228-1526 requires 'osgi.bundle; org.eclipse.m2e.maven.runtime [3.8.6,4.0.0)' but it could not be found
[ERROR]   Cannot satisfy dependency: org.eclipse.m2e.core.tests 2.0.0.qualifier depends on: osgi.bundle; org.eclipse.m2e.core 0.0.0
[ERROR] 
[ERROR] See https://wiki.eclipse.org/Tycho/Dependency_Resolution_Troubleshooting for help.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  01:01 min
[INFO] Finished at: 2023-03-04T12:31:17+04:00
[INFO] ------------------------------------------------------------------------
[WARNING] The requested profile "MiTrust" could not be activated because it does not exist.
[ERROR] Cannot resolve dependencies of MavenProject: org.eclipse.m2e:org.eclipse.m2e.core.tests:2.0.0-SNAPSHOT @ /Users/blacelle/workspace3/m2e-core/org.eclipse.m2e.core.tests/.polyglot.META-INF: See log for details
org.eclipse.tycho.DependencyResolutionException: Cannot resolve dependencies of MavenProject: org.eclipse.m2e:org.eclipse.m2e.core.tests:2.0.0-SNAPSHOT @ /Users/blacelle/workspace3/m2e-core/org.eclipse.m2e.core.tests/.polyglot.META-INF
    at org.eclipse.tycho.p2resolver.P2ResolverImpl.resolveDependencies (P2ResolverImpl.java:238)
    at org.eclipse.tycho.p2resolver.P2ResolverImpl.resolveTargetDependencies (P2ResolverImpl.java:123)
    at org.eclipse.tycho.p2resolver.P2DependencyResolver.doResolveDependencies (P2DependencyResolver.java:330)
    at org.eclipse.tycho.p2resolver.P2DependencyResolver.resolveDependencies (P2DependencyResolver.java:291)
    at org.eclipse.tycho.core.resolver.DefaultTychoResolver.resolveProject (DefaultTychoResolver.java:109)
    at org.eclipse.tycho.core.maven.TychoProjectExecutionListener.beforeProjectLifecycleExecution (TychoProjectExecutionListener.java:106)
    at org.apache.maven.lifecycle.internal.CompoundProjectExecutionListener.beforeProjectLifecycleExecution (CompoundProjectExecutionListener.java:52)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:114)
    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:972)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    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)
Caused by: org.eclipse.tycho.p2.resolver.ResolverException: See log for details
    at org.eclipse.tycho.p2resolver.ProjectorResolutionStrategy.resolve (ProjectorResolutionStrategy.java:95)
    at org.eclipse.tycho.p2resolver.AbstractResolutionStrategy.resolve (AbstractResolutionStrategy.java:54)
    at org.eclipse.tycho.p2resolver.P2ResolverImpl.resolveDependencies (P2ResolverImpl.java:231)
    at org.eclipse.tycho.p2resolver.P2ResolverImpl.resolveTargetDependencies (P2ResolverImpl.java:123)
    at org.eclipse.tycho.p2resolver.P2DependencyResolver.doResolveDependencies (P2DependencyResolver.java:330)
    at org.eclipse.tycho.p2resolver.P2DependencyResolver.resolveDependencies (P2DependencyResolver.java:291)
    at org.eclipse.tycho.core.resolver.DefaultTychoResolver.resolveProject (DefaultTychoResolver.java:109)
    at org.eclipse.tycho.core.maven.TychoProjectExecutionListener.beforeProjectLifecycleExecution (TychoProjectExecutionListener.java:106)
    at org.apache.maven.lifecycle.internal.CompoundProjectExecutionListener.beforeProjectLifecycleExecution (CompoundProjectExecutionListener.java:52)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:114)
    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:972)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:293)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:196)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    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)
[ERROR] 
[ERROR] Re-run Maven using the -X switch to enable full debug logging.

Is there a minimal command to run tests, without re-compiling all previous modules?

@laeubi
Copy link
Member

laeubi commented Mar 4, 2023

You can run single test from the IDE ...

@laeubi
Copy link
Member

laeubi commented Mar 4, 2023

In the meantime of the unitTest, I still have mojo being unexpectly executed. I switch the flag to WARN (as I'm happy to see something is not optimal), but they mojo are still being executed:

You can open the Maven Lifecycle Mapping view to see the source of a mojo execution. Beside that you might need to update the Project config to take the change into account. Also please test if maybe a restart helps (so we probably seeing a caching issue here).

@blacelle
Copy link
Author

blacelle commented Mar 6, 2023

Even after an update of the project config, and a restart of eclipse, I still get unexpected Mojo executions (and failure):

image

@ronnypolley
Copy link

ronnypolley commented Jun 16, 2023

I have something similar:

`- Failed to execute mojo org.eclipse.tycho:tycho-packaging-plugin:1.7.0:package-plugin {execution: default-package-plugin} (org.eclipse.tycho:tycho-packaging-plugin:1.7.0:package-plugin:default-package-plugin:package)

org.eclipse.core.runtime.CoreException: Failed to execute mojo org.eclipse.tycho:tycho-packaging-plugin:1.7.0:package-plugin {execution: default-package-plugin}
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeMojo(MavenExecutionContext.java:340)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.lambda$0(MavenExecutionContext.java:291)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:394)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:275)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:290)
at org.eclipse.m2e.core.project.configurator.MojoExecutionBuildParticipant.build(MojoExecutionBuildParticipant.java:57)
at org.eclipse.m2e.core.internal.builder.MavenBuilderImpl.lambda$1(MavenBuilderImpl.java:139)
at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721)
at org.eclipse.m2e.core.internal.builder.MavenBuilderImpl.build(MavenBuilderImpl.java:122)
at org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:164)
at org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:1)
at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.lambda$1(MavenBuilder.java:109)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:394)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:228)
at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.lambda$0(MavenBuilder.java:100)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:394)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:275)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:214)
at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:83)
at org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:192)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:1020)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:247)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:303)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:392)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:395)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:506)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:454)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:536)
at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:196)
at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:289)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-package-plugin of goal org.eclipse.tycho:tycho-packaging-plugin:1.7.0:package-plugin failed: Cannot invoke "org.eclipse.tycho.core.osgitools.project.EclipsePluginProject.getOutputJars()" because "this.pdeProject" is null
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:133)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeMojo(MavenExecutionContext.java:338)
... 32 more
Caused by: java.lang.NullPointerException: Cannot invoke "org.eclipse.tycho.core.osgitools.project.EclipsePluginProject.getOutputJars()" because "this.pdeProject" is null
at org.eclipse.tycho.packaging.PackagePluginMojo.createSubJars(PackagePluginMojo.java:163)
at org.eclipse.tycho.packaging.PackagePluginMojo.execute(PackagePluginMojo.java:154)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:126)
... 33 more`

And the lifecycle mapping says, that the tycho-plugins have an unknown source:

grafik

I tried it with the m2e-pde plugin, as well as with the m2e-tycho-connector. The result is the same.

@laeubi
Copy link
Member

laeubi commented Jun 26, 2023

org.eclipse.tycho:tycho-packaging-plugin:1.7.0

Tycho 1.7 is really old, can you try with the current 3.0.5 release?

@ronnypolley
Copy link

I could try, but this might take some time. Will come back with the results.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants