Make sure you're specifying a version. On 30 August 2012 10:35, Keith Barlow <[email protected]> wrote:
> Igor, > > No, I am referring to the lifecycle-mapping-metadata.xml file referenced > in the Eclipse Preferences->Maven->Lifecycle Mappings which I currently > have created a file in the default location of > "~/workspace/.metadata/.plugins/org.eclipse.m2e.core/lifecycle-mapping/metadata.xml" > (NOTE: I have the full path even though I only wrote out the relative one > here.) > > I hadn't tried updating project info before but did not and am > definitively getting a null pointer both with and without specifing groupId > and artifactId. Here are the NPEs: > > Without groupId and artifactId: > > 4452 !ENTRY org.eclipse.core.jobs 4 2 2012-08-30 10:25:28.180 > 4453 !MESSAGE An internal error occurred during: "Updating Maven Project". > 4454 !STACK 0 > 4455 java.lang.NullPointerException > 4456 at > org.eclipse.m2e.core.internal.lifecyclemapping.model.PluginExecutionFilter.match(PluginExecutionFilter.java:323) > 4457 at > org.eclipse.m2e.core.internal.lifecyclemapping.SimpleMappingMetadataSource.getPluginExecutionMetadata(SimpleMappingMetadataSource.java:71) > 4458 at > org.eclipse.m2e.core.internal.lifecyclemapping.LifecycleMappingFactory.calculateEffectiveLifecycleMappingMetadata(LifecycleMappingFactory.java: > 490) > 4459 at > org.eclipse.m2e.core.internal.lifecyclemapping.LifecycleMappingFactory.calculateEffectiveLifecycleMappingMetadata(LifecycleMappingFactory.java: > 224) > 4460 at > org.eclipse.m2e.core.internal.lifecyclemapping.LifecycleMappingFactory.calculateLifecycleMapping(LifecycleMappingFactory.java:175) > 4461 at > org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.setupLifecycleMapping(ProjectRegistryManager.java:527) > 4462 at > org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:446) > 4463 at > org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:328) > 4464 at > org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:279) > 4465 at > org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration(ProjectConfigurationManager.java:323) > 4466 at > org.eclipse.m2e.core.ui.internal.UpdateMavenProjectJob.runInWorkspace(UpdateMavenProjectJob.java:74) > 4467 at > org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38) > 4468 at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) > > *With groupId and artifactId:* > > 4473 !ENTRY org.eclipse.core.jobs 4 2 2012-08-30 10:28:28.662 > 4474 !MESSAGE An internal error occurred during: "Updating Maven Project". > 4475 !STACK 0 > 4476 java.lang.NullPointerException > 4477 at > org.eclipse.m2e.core.internal.lifecyclemapping.model.PluginExecutionFilter.match(PluginExecutionFilter.java:337) > 4478 at > org.eclipse.m2e.core.internal.lifecyclemapping.SimpleMappingMetadataSource.getPluginExecutionMetadata(SimpleMappingMetadataSource.java:71) > 4479 at > org.eclipse.m2e.core.internal.lifecyclemapping.LifecycleMappingFactory.calculateEffectiveLifecycleMappingMetadata(LifecycleMappingFactory.java: > 490) > 4480 at > org.eclipse.m2e.core.internal.lifecyclemapping.LifecycleMappingFactory.calculateEffectiveLifecycleMappingMetadata(LifecycleMappingFactory.java: > 224) > 4481 at > org.eclipse.m2e.core.internal.lifecyclemapping.LifecycleMappingFactory.calculateLifecycleMapping(LifecycleMappingFactory.java:175) > 4482 at > org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.setupLifecycleMapping(ProjectRegistryManager.java:527) > 4483 at > org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:446) > 4484 at > org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:328) > 4485 at > org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:279) > 4486 at > org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration(ProjectConfigurationManager.java:323) > 4487 at > org.eclipse.m2e.core.ui.internal.UpdateMavenProjectJob.runInWorkspace(UpdateMavenProjectJob.java:74) > 4488 at > org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38) > 4489 at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) > > Thanks. > > Keith > > On Wed, Aug 29, 2012 at 10:22 PM, Igor Fedorenko <[email protected]>wrote: > >> You are talking about META-INF/m2e/lifecycle-**mapping-metadata.xml >> inside >> your maven plugin jar, right? For the record, m2e is able to use mapping >> metadata from test maven plugin [1]. >> >> Do you Update Project Configuration after changing mapping metadata? >> There may be a problem with -SNAPSHOT plugins, so you may need to >> restart Eclipse for m2e to pick up new metadata. >> >> >> [1] https://github.com/sonatype/**m2e-core-tests/blob/master/** >> org.eclipse.m2e.tests/**repositories/testrepo-src/** >> test-embeddedmapping-plugin/**src/main/resources/META-INF/** >> m2e/lifecycle-mapping-**metadata.xml<https://github.com/sonatype/m2e-core-tests/blob/master/org.eclipse.m2e.tests/repositories/testrepo-src/test-embeddedmapping-plugin/src/main/resources/META-INF/m2e/lifecycle-mapping-metadata.xml> >> >> -- >> Regards, >> Igor >> >> >> On 12-08-29 6:07 PM, Keith Barlow wrote: >> >>> Igor, >>> >>> Attempting to follow your advice, I added the following to my >>> lifecycle-mapping-metadata.**xml: >>> >>> <lifecycleMappingMetadata> >>> <pluginExecutions> >>> <pluginExecution> >>> <pluginExecutionFilter> >>> <goals> >>> <goal>generate</goal> >>> </goals> >>> </pluginExecutionFilter> >>> <action> >>> <execute> >>> <runOnIncremental>false</**runOnIncremental> >>> <runOnConfiguration>true</**runOnConfiguration> >>> </execute> >>> </action> >>> </pluginExecution> >>> </pluginExecutions> >>> </lifecycleMappingMetadata> >>> >>> which seemed to result in a null pointer exception. >>> >>> From the .log file: >>> >>> 3450 !ENTRY org.eclipse.core.resources 4 75 2012-08-29 17:52:37.351 >>> 3451 !MESSAGE Errors occurred during the build. >>> 3452 !SUBENTRY 1 org.eclipse.m2e.core 4 75 2012-08-29 17:52:37.351 >>> 3453 !MESSAGE Errors running builder 'Maven Project Builder' on project >>> 'project1'. >>> 3454 !STACK 0 >>> 3455 java.lang.NullPointerException >>> 3456 at >>> org.eclipse.m2e.core.internal.**lifecyclemapping.model.** >>> PluginExecutionFilter.match(**PluginExecutionFilter.java:**323) >>> 3457 at >>> org.eclipse.m2e.core.internal.**lifecyclemapping.**SimpleMappingMetadata >>> Source.**getPluginExecutionMetadata(**SimpleMappingMetadataSource.** >>> java:71) >>> 3458 at >>> org.eclipse.m2e.core.internal.**lifecyclemapping.** >>> LifecycleMappingFactory.**calculateEffectiveLifecycleMap**pingMetadata(* >>> *LifecycleMappingFactory.java: >>> 490) >>> 3459 at >>> org.eclipse.m2e.core.internal.**lifecyclemapping.** >>> LifecycleMappingFactory.**calculateEffectiveLifecycleMap**pingMetadata(* >>> *LifecycleMappingFactory.java: >>> 224) >>> 3460 at >>> org.eclipse.m2e.core.internal.**lifecyclemapping.** >>> LifecycleMappingFactory.**calculateLifecycleMapping(** >>> LifecycleMappingFactory.java:**175) >>> 3461 at >>> org.eclipse.m2e.core.internal.**project.registry.** >>> ProjectRegistryManager.**setupLifecycleMapping(** >>> ProjectRegistryManager.java:**527) >>> 3462 at >>> org.eclipse.m2e.core.internal.**project.registry.** >>> ProjectRegistryManager.**refresh(**ProjectRegistryManager.java:**446) >>> 3463 at >>> org.eclipse.m2e.core.internal.**project.registry.** >>> ProjectRegistryManager.**refresh(**ProjectRegistryManager.java:**328) >>> 3464 at >>> org.eclipse.m2e.core.internal.**project.registry.** >>> ProjectRegistryManager.**refresh(**ProjectRegistryManager.java:**279) >>> 3465 at >>> org.eclipse.m2e.core.internal.**project.registry.** >>> MavenProjectManager.refresh(**MavenProjectManager.java:58) >>> 3466 at >>> org.eclipse.m2e.core.internal.**builder.MavenBuilder.build(** >>> MavenBuilder.java:87) >>> 3467 at >>> org.eclipse.core.internal.**events.BuildManager$2.run(** >>> BuildManager.java:728) >>> 3468 at org.eclipse.core.runtime.**SafeRunner.run(SafeRunner.** >>> java:42) >>> 3469 at >>> org.eclipse.core.internal.**events.BuildManager.** >>> basicBuild(BuildManager.java:**199) >>> 3470 at >>> org.eclipse.core.internal.**events.BuildManager.** >>> basicBuild(BuildManager.java:**239) >>> 3471 at >>> org.eclipse.core.internal.**events.BuildManager$1.run(** >>> BuildManager.java:292) >>> 3472 at org.eclipse.core.runtime.**SafeRunner.run(SafeRunner.** >>> java:42) >>> 3473 at >>> org.eclipse.core.internal.**events.BuildManager.** >>> basicBuild(BuildManager.java:**295) >>> 3474 at >>> org.eclipse.core.internal.**events.BuildManager.** >>> basicBuildLoop(BuildManager.**java:351) >>> 3475 at >>> org.eclipse.core.internal.**events.BuildManager.build(** >>> BuildManager.java:374) >>> 3476 at >>> org.eclipse.core.internal.**events.AutoBuildJob.doBuild(** >>> AutoBuildJob.java:143) >>> 3477 at >>> org.eclipse.core.internal.**events.AutoBuildJob.run(** >>> AutoBuildJob.java:241) >>> 3478 at org.eclipse.core.internal.**jobs.Worker.run(Worker.java:** >>> 54) >>> >>> I tried adding the groupId and artifactId to the lifecycle mapping >>> declaration but don't know that it helped... I haven't been able to >>> reproduce the NPE or resolve the complaints about lack of lifecycle >>> information in the POM editor... >>> >>> Am I doing something wrong? >>> >>> Thanks. >>> >>> Keith >>> >>> On Wed, Aug 29, 2012 at 1:22 PM, Igor Fedorenko <[email protected] >>> <mailto:[email protected]>> wrote: >>> >>> >>> >>> On 12-08-29 1:01 PM, Keith Barlow wrote: >>> >>> The plugin is a customized xjc plugin so if I understand you >>> correctly, >>> I have two options: >>> >>> 1.) Configure it for execute which requires adding code which >>> uses the >>> plexus-build-api to make workspace changes. (e.g. I could have >>> the >>> generated files added to the build path if desired or I could >>> just leave >>> that as a manual task but would still need a no-op >>> implementation to be >>> executed). >>> >>> >>> Assuming the goal is to have generated files visible as java sources >>> in >>> workspace, the mapping needs to >>> >>> runOnConfiguration=true, such that source root folders added by the >>> plugin are created as Eclipse java project source folders. This does >>> not >>> require use of BuildContext >>> >>> runOnIncremental can be either true of false. runOnIncremental=false >>> does not require use of BuildContext either, but source code will >>> only >>> be (re)generated during full/clean workspace build and will require >>> manual project refresh. For automatic generation of sources, >>> runOnIncremental=true and use of BuildContext is required >>> >>> >>> >>> 2.) Add it as ignore which would suppress all error messages and >>> prevent >>> the plugin from being executed unless I actually do a maven >>> build. >>> (which is essentially what happens now only I do get error >>> messages.) >>> >>> >>> This will completely ignore the plugin in Eclipse. You will need to >>> create java source folders in Eclipse and run the code generation >>> manually. >>> >>> -- >>> Regards, >>> Igor >>> >>> Is that correct? >>> >>> (Thanks in advance.) >>> >>> Keith >>> >>> On Wed, Aug 29, 2012 at 12:43 PM, Igor Fedorenko >>> <[email protected] <mailto:[email protected]> >>> <mailto:[email protected] <mailto:[email protected]>>> >>> wrote: >>> >>> If your maven plugin can safely participate Eclipse >>> incremental build, >>> which in practice means it can either be safely ignored or >>> plugin code >>> uses plexus BuildContext to negotiate changes, the mapping >>> metadata can >>> be embedded in maven plugin itself. See [1] for more >>> details. >>> >>> If mapping requires Eclipse-specific logic not currently >>> achievable >>> through BuildContext, then you need to write an Eclipse >>> plugin that >>> provides the implementation of the logic and mapping xml >>> file. >>> >>> [1] >>> >>> http://wiki.eclipse.org/M2E___**__compatible_maven_plugins<http://wiki.eclipse.org/M2E_____compatible_maven_plugins> >>> >>> <http://wiki.eclipse.org/M2E__**_compatible_maven_plugins<http://wiki.eclipse.org/M2E___compatible_maven_plugins> >>> > >>> >>> >>> >>> <http://wiki.eclipse.org/M2E__**_compatible_maven_plugins<http://wiki.eclipse.org/M2E___compatible_maven_plugins> >>> >>> <http://wiki.eclipse.org/M2E_**compatible_maven_plugins<http://wiki.eclipse.org/M2E_compatible_maven_plugins> >>> >> >>> >>> -- >>> Regards, >>> Igor >>> >>> >>> On 12-08-29 12:31 PM, Keith Barlow wrote: >>> >>> Hiyas, >>> >>> We have a customized maven plugin we use in our company >>> which >>> doesn't >>> have lifecycle mapping metadata for it... How do I add >>> a local >>> entry to >>> the new Lifecycle Mappings preferences feature in m2e? >>> I looked >>> at the >>> developer documentation for extension development and >>> it defines a >>> lifecycle mapping xml blob but it looks like that needs >>> to point >>> to some >>> kind of configurator class... is that required for >>> local entries? >>> where would it live? >>> >>> Thanks. >>> >>> Keith >>> >>> -- >>> Keith Barlow >>> >>> /Software Engineer/ >>> *Dell Boomi* >>> >>> >>> >>> ______________________________**_____________________ >>> >>> m2e-users mailing list >>> [email protected] <mailto:[email protected]> >>> <mailto:[email protected] <mailto:[email protected]>**> >>> >>> https://dev.eclipse.org/____**mailman/listinfo/m2e-users<https://dev.eclipse.org/____mailman/listinfo/m2e-users> >>> >>> <https://dev.eclipse.org/__**mailman/listinfo/m2e-users<https://dev.eclipse.org/__mailman/listinfo/m2e-users> >>> > >>> >>> <https://dev.eclipse.org/__**mailman/listinfo/m2e-users<https://dev.eclipse.org/__mailman/listinfo/m2e-users> >>> >>> <https://dev.eclipse.org/**mailman/listinfo/m2e-users<https://dev.eclipse.org/mailman/listinfo/m2e-users> >>> >> >>> >>> ______________________________**_____________________ >>> >>> m2e-users mailing list >>> [email protected] <mailto:[email protected]> >>> <mailto:[email protected] <mailto:[email protected]>**> >>> >>> https://dev.eclipse.org/____**mailman/listinfo/m2e-users<https://dev.eclipse.org/____mailman/listinfo/m2e-users> >>> >>> <https://dev.eclipse.org/__**mailman/listinfo/m2e-users<https://dev.eclipse.org/__mailman/listinfo/m2e-users> >>> > >>> >>> >>> >>> <https://dev.eclipse.org/__**mailman/listinfo/m2e-users<https://dev.eclipse.org/__mailman/listinfo/m2e-users> >>> >>> <https://dev.eclipse.org/**mailman/listinfo/m2e-users<https://dev.eclipse.org/mailman/listinfo/m2e-users> >>> >> >>> >>> >>> >>> >>> -- >>> Keith Barlow >>> >>> /Software Engineer/ >>> *Dell Boomi* >>> >>> >>> >>> ______________________________**___________________ >>> m2e-users mailing list >>> [email protected] <mailto:[email protected]> >>> >>> https://dev.eclipse.org/__**mailman/listinfo/m2e-users<https://dev.eclipse.org/__mailman/listinfo/m2e-users> >>> >>> <https://dev.eclipse.org/**mailman/listinfo/m2e-users<https://dev.eclipse.org/mailman/listinfo/m2e-users> >>> > >>> >>> ______________________________**___________________ >>> m2e-users mailing list >>> [email protected] <mailto:[email protected]> >>> >>> https://dev.eclipse.org/__**mailman/listinfo/m2e-users<https://dev.eclipse.org/__mailman/listinfo/m2e-users> >>> >>> <https://dev.eclipse.org/**mailman/listinfo/m2e-users<https://dev.eclipse.org/mailman/listinfo/m2e-users> >>> > >>> >>> >>> >>> >>> -- >>> Keith Barlow >>> >>> /Software Engineer/ >>> *Dell Boomi* >>> >>> >>> >>> ______________________________**_________________ >>> m2e-users mailing list >>> [email protected] >>> https://dev.eclipse.org/**mailman/listinfo/m2e-users<https://dev.eclipse.org/mailman/listinfo/m2e-users> >>> >>> ______________________________**_________________ >> m2e-users mailing list >> [email protected] >> https://dev.eclipse.org/**mailman/listinfo/m2e-users<https://dev.eclipse.org/mailman/listinfo/m2e-users> >> > > > > -- > Keith Barlow > > *Software Engineer* > *Dell Boomi* > > > _______________________________________________ > m2e-users mailing list > [email protected] > https://dev.eclipse.org/mailman/listinfo/m2e-users > >
_______________________________________________ m2e-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/m2e-users
