Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Install Eclipse & Plugins

Eclipse

...

Info

Internally at Magnolia we would have liked to switch to Eclipse Indigo a long time ago but then preferred to stick to Helios due to the shortcomings caused by this still unresolved Indigo bug (see also related issue http://jira.magnolia-cms.com/browse/BUILD-72Image Removed). However, if for some reason you have to use Indigo, we found some workarounds you can read below.

  • m2e 1.0 known issue

Indigo introduces m2e (Maven 2 Eclipse) 1.0, which seems to cause some problems with plugins that are not "known" by m2e. This hits Magnolia with the setproperty Maven plugin. If you have m2e 1.0 installed you will likely get the following error upon importing a Maven project (i.e. a Magnolia module) into Eclipse: 

Warning

No marketplace entries found to handle Execution currentDate, in /pom.xml in Eclipse.  Please see Help for more information.

Image Removed

Choose to resolve the issue later and import the project.

Now, in the Eclipse Markers view you should get the following Maven error preventing the project from building (you should also receive some negligible warnings about m2e ignoring some plugin's goals):

Warning

Plugin execution not covered by lifecycle configuration: info.magnolia:maven-setproperty-plugin:1.1.1:set-property (execution: currentDate, phase: generate-resources)

To get rid of the error and proceed with project build you'll need to add the following snippet to the pluginManagement/plugins section of your project's pom.xml

...

<plugin>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself. -->
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
  <lifecycleMappingMetadata>
    <pluginExecutions>
      <pluginExecution>
        <pluginExecutionFilter>
          <groupId>info.magnolia</groupId>
          <artifactId>maven-setproperty-plugin</artifactId>
          <versionRange>[1.1.1,)</versionRange>
          <goals>
            <goal>set-property</goal>
          </goals>
        </pluginExecutionFilter>
        <action>
          <execute></execute>
        </action>
      </pluginExecution>
    </pluginExecutions>
  </lifecycleMappingMetadata>
</configuration>
</plugin>

For some background info and the ratio behind this new behaviour in m2e, please read:

http://wiki.eclipse.org/M2E_plugin_execution_not_covered

http://dev.eclipse.org/mhonarc/lists/m2e-users/thrd7.html starting at http://dev.eclipse.org/mhonarc/lists/m2e-users/msg00448.html

  • magnolia-empty-webapp configuration

The new version of Maven integration For WTP plugin, will create a /target/m2e-wtp folder and serve project resources from there. This may cause issues when choosing to serve modules without publishing them in the Servers configuration. To solve this,

  • go to project Properties -> Deployment Assembly
  • remove the m2e-wtp folder
  • add src/main/webapp folder and src/main/resources folders 

Your configuration should now look similar to that of the screenshot below.
Image Removed

Notice that when importing new modules which magnolia-empty-webapp depends on, the Deployment Assembly configuration will be automatically updated. In the example above, the magnolia-ui-admincentral module was imported after the magnolia-empty-webapp and is now directly served from the eclipse workspace instead of the local Maven repository jar.

Eclipse Helios (3.6)

Info

As of 4th April 2012 our SVN repository will be gradually migrated to GIT. The new Eclipse bundle is a general update of the previous Helios-based bundle which now also contains EGit plugin, an Eclipse Team provider for the Git version control system.
To know more about Git usage you can start by reading our wiki page

...