Plugin execution not covered by lifecycle configuration (1)
Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (execution: default-compile, phase: compile)
Eclipse: epp.package.java 4.7.2.20171218-0600
Submitted on 13 February 2018 at 10:49
Spoofax: org.metaborg.spoofax.eclipse 2.4.1
System: Mac O
Issue Log
I’m pretty sure this is the same issue. I’m assuming that this was not fixed because the bug report was unclear.
Eclipse: org.eclipse.platform.ide 4.8.0.I20180611-0500
Spoofax: org.metaborg.spoofax.eclipse 2.5.1
System: Windows 10 amd64 10.0Steps to reproduce:
- Download Eclipse for Windows, Unpack and Run
- Make settings changes recommended at the bottom of http://www.metaborg.org/en/latest/source/install.html
- Follow directions on creating Hello World language at http://www.metaborg.org/en/latest/source/langdev/start.html
- “File ‣ New ‣ Project”
- “select Spoofax ‣ Spoofax language project and press
Next
”- “As project name, choose
helloworld
”- “Keep the defaults for the other fields and press
Finish
”- Build project (it automatically built for me)
Three errors are reported in the
pom.xml
:
- Line 1:
- Conflicting lifecycle mapping (plugin execution “org.apache.maven.plugins:maven-compiler-plugin:3.8.0:compile (execution: default-compile, phase: compile)”). To enable full functionality, remove the conflicting mapping and run Maven->Update Project Configuration.
- Line 13:
- Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-compiler-plugin:3.8.0:compile (execution: default-compile, phase: compile)
- Plugin execution not covered by lifecycle configuration: org.metaborg:spoofax-maven-plugin:2.5.1:compile (execution: default-compile, phase: compile)
I think this problem was fixed at some point, but came back again due to changes in Maven or Eclipse’s M2Eclipse plugin. At this point, I am unsure as to how to solve these problems.
The problem is mapping plugins/goals from Maven to Eclipse executions/jobs. Some of these mappings are built in, and more mappings can be defined in
pom.xml
files, as documented in http://www.eclipse.org/m2e/documentation/m2e-execution-not-covered.html#execute-plugin-goal. Our parentpom.xml
file includes this configuration: https://github.com/metaborg/spoofax-deploy/blob/spoofax-release/parent/pom.xml#L570-L655 for version 2.5.1 of Spoofax, which should prevent exactly those errors.
Just thought that as it is going on 3 years since this was reported and 2 years since there was last any apparent activity, I should mention that at least the last of the errors, the spoofax-maven-plugin one on line 13, still remains at this point, since I am sure that ideally the Spoofax developers would like the Hello World example prominently displayed at the beginning of the system’s own Getting Started tutorial to actually work. My full Eclipse configuration is quoted below in case that is of any help. I will try to track down and fix the problem as I really would like to be able to use SDF3’s priority rules and layout constraints, but I must admit I am left a bit unclear how it is possible for anyone to use Spoofax at all if the Hello World example does not even work?
Update: the pom.xml section to which you refer above includes the snippet
<artifactId>lifecycle-mapping</artifactId>
, yet the following command executed either in my eclipse installation directory or my eclipse workspace directory returns absolutely no hits:grep -R --include "*pom.xml" lifecycle *
(whereas if I change lifecycle to plugin, say, I get plenty of hits). So is it possible perhaps that the pom.xml to which you refer above is somehow not actually being delivered in the distribution files? Where should I be able to find that particular pom.xml file on my system?Thanks so much for any guidance you can offer.
Buildship: Eclipse Plug-ins for Gradle 3.1.4.v20200326-1743 org.eclipse.buildship.feature.group Eclipse Buildship EclEmma Java Code Coverage 3.1.3.202003132300 org.eclipse.eclemma.feature.feature.group Eclipse EclEmma Eclipse IDE for Java Developers 4.17.0.20200910-1200 epp.package.java Eclipse Packaging Project Eclipse Java Development Tools 3.18.500.v20200902-1800 org.eclipse.jdt.feature.group Eclipse.org Git integration for Eclipse 5.9.0.202009080501-r org.eclipse.egit.feature.group Eclipse EGit Java implementation of Git 5.9.0.202009080501-r org.eclipse.jgit.feature.group Eclipse JGit m2e - Maven Integration for Eclipse (includes Incubating components) 1.16.1.20200710-1008 org.eclipse.m2e.feature.feature.group Eclipse.org - m2e m2e - slf4j over logback logging (Optional) 1.16.0.20200318-1040 org.eclipse.m2e.logback.feature.feature.group Eclipse.org - m2e Marketplace Client 1.8.4.v20200709-0857 org.eclipse.epp.mpc.feature.group Eclipse Marketplace Client Mylyn WikiText Editors 3.0.38.202008172112 org.eclipse.mylyn.wikitext.editors_feature.feature.group Eclipse Mylyn POM Editor using LemMinX language server (includes Incubating components) 1.16.2.20200902-0711 org.eclipse.m2e.lemminx.feature.feature.group Eclipse.org - m2e Spoofax Eclipse meta-tooling 2.5.13 org.metaborg.spoofax.eclipse.meta.feature.feature.group null Spoofax Eclipse meta-tooling M2E integration 2.5.13 org.metaborg.spoofax.eclipse.meta.m2e.feature.feature.group null Spoofax Eclipse runtime 2.5.13 org.metaborg.spoofax.eclipse.feature.feature.group null Tip of the Day UI Feature 0.2.1100.v20200724-0938 org.eclipse.tips.feature.feature.group Eclipse.org Wild Web Developer XML tools 0.10.2.202007231627 org.eclipse.wildwebdeveloper.xml.feature.feature.group Eclipse Wild Web Developer project
Workarounds: OK, I have gotten the hello world example to execute as described as follows:
Once the the lifecycle error in the pom.xml shows up, double click on the error line to open up the pom.xml file. The display will be centered on line 13, with the
<parent>
tag underlined with a squiggly line. Right click on that tag, and select “Quick fix” from the menu. That will pop up another menu from which you select the third option, something about marking it as ignored. When you’ve done that, the error will automagically go away (although I could not find the file that Eclipse modified to do the fix; I assume there must be some changed file somewhere).I will also mention here, although it is only tangentially related and really a separate issue, that I next had problems with the JRE version not matching up; the project seemed to be marked for JRE version 1.8, and my eclipse installation only had version 11 or so it seemed. I was able to clear these errors by right-clicking on the “helloworld” project, selecting properties, and then in Java Build Path under Libraries deleting the JRE System Library v 1.8, and then adding the default JRE System Library, and under Java Compiler setting the Compiler compliance level to 11.
With all of these changes, I was then able to create a test.hel file and get “hello world” and “world hello” etc. to parse correctly and “hello earth” to error, etc.
Further informational update, in case it helps anyone tracking down the underlying problem:
Turns out there are lots of messages about this in eclipse-workspace/.metadata/.log, starting with!ENTRY org.eclipse.m2e.logback.appender 2 0 2020-12-07 19:43:21.668 !MESSAGE The POM for org.metaborg:spoofax-maven-plugin:jar:2.5.13 is missing, no dependency information available !ENTRY org.eclipse.m2e.logback.appender 2 0 2020-12-07 19:43:21.852 !MESSAGE Failed to build parent project for org.example:helloworld:spoofax-language:0.1.0-SNAPSHOT !ENTRY org.eclipse.m2e.logback.appender 4 0 2020-12-07 19:43:21.985 !MESSAGE Could not read parent project
and going on and on from there. I don’t really know what all this means, but to me it maybe lends some credence to my suggestion above that perhaps the parent .pom file is not making it into the distribution…
Thanks for looking into this and giving such detailed information! :) This issue tracker is not very active as you can see, but we do keep an eye on it. I’ve poked the person in our group with the most Eclipse knowledge to have a look at what you’ve posted.
In the mean time, if you would like some more interactive help with Spoofax, feel free to contact Eelco Visser (e.visser@tudelft.nl) for access to the channel #spoofax-users in the group’s Slack org. (We need to update the Spoofax website with these instructions, we found a separate Slack org for Spoofax was not effective so we switched to guests in a channel).
This might be solved with https://github.com/metaborg/spoofax-deploy/commit/46e2e49125cf1ec7cff1cdb9c7f8267234f857d9 (on the development version of Spoofax), but I have no way to test it since I cannot reproduce the bug
I am able to reproduce the problem by completely deleting my Eclipse installation, reinstalling Eclipse from scratch from the latest standard Eclipse IDE for Java release tarball, opening a completely new workspace, adding the Spoofax stable release update site as an update site for Eclipse, using the Eclipse installer to install Spoofax, and then creating a new project. That reliably produces the “not covered by lifecycle” error in the new project. So if you can point me to an update site with a distribution that would include the above commit, I’d be happy to give that a whirl and see if it avoids the error.
Happy to say I just found the latest development update site http://buildfarm.metaborg.org/job/metaborg/job/spoofax-releng/job/master/lastSuccessfulBuild/artifact/dist/spoofax/eclipse/site/ and re-did the entire installation from scratch using that, and I did not encounter the life cycle error. So potentially this issue is fixed for Spoofax 2.6! Thank you very much.
Sounds like the issue is resolved, so I’m closing this then.
Log in to post comments