eclipse:eclipse

Generates the following eclipse configuration files:

  • .project and .classpath files
  • .setting/org.eclipse.jdt.core.prefs with project specific compiler settings
  • various configuration files for WTP (Web Tools Project), if the parameter wtpversion is set to a valid version (WTP configuration is not generated by default)
If this goal is run on a multiproject root, dependencies between modules will be configured as direct project dependencies in Eclipse (unless useProjectReferences is set to false).

Mojo Attributes :

  • Requires a Maven 2.0 project to execute.
  • Invokes the execution of the lifecycle phase generate-resources prior to executing itself.

Required Parameters

Name Type Description
buildOutputDirectory File The default output directory Default value is ${project.build.outputDirectory}.
useProjectReferences boolean When set to false, the plugin will not create sub-projects and instead reference those sub-projects using the installed package in the local repository Default value is true.

Optional Parameters

Name Type Description
addGroupIdToProjectName boolean If set to true, the groupId of the artifact is appended to the name of the generated Eclipse project. See projectNameTemplate for other options. Default value is false.
addVersionToProjectName boolean If set to true, the version number of the artifact is appended to the name of the generated Eclipse project. See projectNameTemplate for other options. Default value is false.
additionalBuildcommands List List of eclipse build commands to be added to the default ones. Old style:
<additionalBuildcommands>
<buildcommand>org.springframework.ide.eclipse.core.springbuilder</buildcommand>
</additionalBuildcommands>
New style:
<additionalBuildcommands>
<buildCommand>
<name>org.ui.externaltools.ExternalToolBuilder</name>
<triggers>auto,full,incremental,</triggers>
<arguments>
<LaunchConfigHandle>&lt;project&gt;./externalToolBuilders/MavenBuilder.launch</LaunchConfighandle>
</arguments>
</buildCommand>
</additionalBuildcommands>
Note the difference between buildcommand and buildCommand. You can mix and match old and new-style configuration entries.
additionalConfig EclipseConfigFile[] Allow to configure additional generic configuration files for eclipse that will be written out to disk when running eclipse:eclipse. FOr each file you can specify the name and the text content.
<additionalConfig>
<file>
<name>.checkstyle</name>
<content>
<![CDATA[<fileset-config file-format-version="1.2.0" simple-config="true">
<fileset name="all" enabled="true" check-config-name="acme corporate style" local="false">
<file-match-pattern match-pattern="." include-pattern="true"/>
</fileset>
<filter name="NonSrcDirs" enabled="true"/>
</fileset-config>]]>
</content>
</file>
</additionalConfig>
additionalProjectFacets Map List of eclipse project facets to be added to the default ones.
<additionalProjectFacets>
<jst.jsf>1.1<jst.jsf/>
</additionalProjectFacets>
additionalProjectnatures List List of eclipse project natures to be added to the default ones.
<additionalProjectnatures>
<projectnature>org.springframework.ide.eclipse.core.springnature</projectnature>
</additionalProjectnatures>
artifactCollector ArtifactCollector Artifact collector, needed to resolve dependencies.
artifactFactory ArtifactFactory Artifact factory, needed to download source jars for inclusion in classpath.
artifactMetadataSource ArtifactMetadataSource No description.
artifactResolver ArtifactResolver Artifact resolver, needed to download source jars for inclusion in classpath.
buildcommands List List of eclipse build commands. By default the org.eclipse.jdt.core.javabuilder builder plus the needed WTP builders are added. If you specify any configuration for this parameter, only those buildcommands specified will be used; the defaults won't be added. Use the additionalBuildCommands parameter for that. Configuration example: Old style:
<buildcommands>
<buildcommand>org.eclipse.wst.common.modulecore.ComponentStructuralBuilder</buildcommand>
<buildcommand>org.eclipse.jdt.core.javabuilder</buildcommand>
<buildcommand>org.eclipse.wst.common.modulecore.ComponentStructuralBuilderDependencyResolver</buildcommand>
</buildcommands>
For new style, see additionalBuildCommands.
classpathContainers List List of container classpath entries. By default the org.eclipse.jdt.launching.JRE_CONTAINER classpath container is added. Configuration example:
<classpathContainers>
<classpathContainer>org.eclipse.jdt.launching.JRE_CONTAINER</classpathContainer>
<classpathContainer>org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v5.5</classpathContainer>
<classpathContainer>org.eclipse.jst.j2ee.internal.web.container/artifact</classpathContainer>
</classpathContainers>
downloadJavadocs boolean Enables/disables the downloading of javadoc attachments. Defaults to false. When this flag is true remote repositories are checked for javadocs: in order to avoid repeated check for unavailable javadoc archives, a status cache is mantained into the target dir of the root project. Run mvn:clean or delete the file mvn-eclipse-cache.properties in order to reset this cache.
downloadSources boolean Enables/disables the downloading of source attachments. Defaults to false. When this flag is true remote repositories are checked for sources: in order to avoid repeated check for unavailable source archives, a status cache is mantained into the target dir of the root project. Run mvn:clean or delete the file mvn-eclipse-cache.properties in order to reset this cache.
eclipseDownloadSources boolean Enables/disables the downloading of source attachments. Defaults to false. DEPRECATED - use downloadSources
eclipseProjectDir File Eclipse workspace directory.
manifest File The relative path of the manifest file Default value is ${basedir}/META-INF/MANIFEST.MF.
pde boolean Is it an PDE project? If yes, the plugin adds the necessary natures and build commands to the .project file. Additionally it copies all libraries to a project local directory and references them instead of referencing the files in the local Maven repository. It also ensured that the "Bundle-Classpath" in META-INF/MANIFEST.MF is synchronized. Default value is false.
projectNameTemplate String Allows configuring the name of the eclipse projects. This property if set wins over addVersionToProjectName and addGroupIdToProjectName You can use [groupId], [artifactId] and [version] variables. eg. [groupId].[artifactId]-[version]
projectnatures List List of eclipse project natures. By default the org.eclipse.jdt.core.javanature nature plus the needed WTP natures are added. Natures added using this property replace the default list.
<projectnatures>
<projectnature>org.eclipse.jdt.core.javanature</projectnature>
<projectnature>org.eclipse.wst.common.modulecore.ModuleCoreNature</projectnature>
</projectnatures>
skip boolean Skip the operation when true. Default value is false.
wtpContextName String JEE context name of the WTP module. ( ex. WEB context name ). Default value is ${project.artifactId}.
wtpversion String The version of WTP for which configuration files will be generated. The default value is "none" (don't generate WTP configuration), supported versions are "R7", "1.0", and "1.5" Default value is none.

Parameter Details

addGroupIdToProjectName

If set to true, the groupId of the artifact is appended to the name of the generated Eclipse project. See projectNameTemplate for other options.

  • Type : boolean
  • Required : No
  • Expression : ${eclipse.addGroupIdToProjectName}
  • Default : false

addVersionToProjectName

If set to true, the version number of the artifact is appended to the name of the generated Eclipse project. See projectNameTemplate for other options.

  • Type : boolean
  • Required : No
  • Expression : ${eclipse.addVersionToProjectName}
  • Default : false

additionalBuildcommands

List of eclipse build commands to be added to the default ones. Old style:

<additionalBuildcommands>
<buildcommand>org.springframework.ide.eclipse.core.springbuilder</buildcommand>
</additionalBuildcommands>
New style:
<additionalBuildcommands>
<buildCommand>
<name>org.ui.externaltools.ExternalToolBuilder</name>
<triggers>auto,full,incremental,</triggers>
<arguments>
<LaunchConfigHandle>&lt;project&gt;./externalToolBuilders/MavenBuilder.launch</LaunchConfighandle>
</arguments>
</buildCommand>
</additionalBuildcommands>
Note the difference between buildcommand and buildCommand. You can mix and match old and new-style configuration entries.

  • Type : java.util.List
  • Required : No

additionalConfig

Allow to configure additional generic configuration files for eclipse that will be written out to disk when running eclipse:eclipse. FOr each file you can specify the name and the text content.

<additionalConfig>
<file>
<name>.checkstyle</name>
<content>
<![CDATA[<fileset-config file-format-version="1.2.0" simple-config="true">
<fileset name="all" enabled="true" check-config-name="acme corporate style" local="false">
<file-match-pattern match-pattern="." include-pattern="true"/>
</fileset>
<filter name="NonSrcDirs" enabled="true"/>
</fileset-config>]]>
</content>
</file>
</additionalConfig>

  • Type : org.apache.maven.plugin.eclipse.EclipseConfigFile[]
  • Required : No

additionalProjectFacets

List of eclipse project facets to be added to the default ones.

<additionalProjectFacets>
<jst.jsf>1.1<jst.jsf/>
</additionalProjectFacets>

  • Type : java.util.Map
  • Required : No

additionalProjectnatures

List of eclipse project natures to be added to the default ones.

<additionalProjectnatures>
<projectnature>org.springframework.ide.eclipse.core.springnature</projectnature>
</additionalProjectnatures>

  • Type : java.util.List
  • Required : No

artifactCollector

Artifact collector, needed to resolve dependencies.

  • Type : org.apache.maven.artifact.resolver.ArtifactCollector
  • Required : No

artifactFactory

Artifact factory, needed to download source jars for inclusion in classpath.

  • Type : org.apache.maven.artifact.factory.ArtifactFactory
  • Required : No

artifactMetadataSource

No Description.

  • Type : org.apache.maven.artifact.metadata.ArtifactMetadataSource
  • Required : No

artifactResolver

Artifact resolver, needed to download source jars for inclusion in classpath.

  • Type : org.apache.maven.artifact.resolver.ArtifactResolver
  • Required : No

buildOutputDirectory

The default output directory

  • Type : java.io.File
  • Required : Yes
  • Expression : ${outputDirectory}
  • Default : ${project.build.outputDirectory}

buildcommands

List of eclipse build commands. By default the org.eclipse.jdt.core.javabuilder builder plus the needed WTP builders are added. If you specify any configuration for this parameter, only those buildcommands specified will be used; the defaults won't be added. Use the additionalBuildCommands parameter for that. Configuration example: Old style:

<buildcommands>
<buildcommand>org.eclipse.wst.common.modulecore.ComponentStructuralBuilder</buildcommand>
<buildcommand>org.eclipse.jdt.core.javabuilder</buildcommand>
<buildcommand>org.eclipse.wst.common.modulecore.ComponentStructuralBuilderDependencyResolver</buildcommand>
</buildcommands>
For new style, see additionalBuildCommands.

  • Type : java.util.List
  • Required : No

classpathContainers

List of container classpath entries. By default the org.eclipse.jdt.launching.JRE_CONTAINER classpath container is added. Configuration example:

<classpathContainers>
<classpathContainer>org.eclipse.jdt.launching.JRE_CONTAINER</classpathContainer>
<classpathContainer>org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v5.5</classpathContainer>
<classpathContainer>org.eclipse.jst.j2ee.internal.web.container/artifact</classpathContainer>
</classpathContainers>

  • Type : java.util.List
  • Required : No

downloadJavadocs

Enables/disables the downloading of javadoc attachments. Defaults to false. When this flag is true remote repositories are checked for javadocs: in order to avoid repeated check for unavailable javadoc archives, a status cache is mantained into the target dir of the root project. Run mvn:clean or delete the file mvn-eclipse-cache.properties in order to reset this cache.

  • Type : boolean
  • Required : No
  • Expression : ${downloadJavadocs}

downloadSources

Enables/disables the downloading of source attachments. Defaults to false. When this flag is true remote repositories are checked for sources: in order to avoid repeated check for unavailable source archives, a status cache is mantained into the target dir of the root project. Run mvn:clean or delete the file mvn-eclipse-cache.properties in order to reset this cache.

  • Type : boolean
  • Required : No
  • Expression : ${downloadSources}

eclipseDownloadSources

Enables/disables the downloading of source attachments. Defaults to false. DEPRECATED - use downloadSources

  • Type : boolean
  • Required : No
  • Expression : ${eclipse.downloadSources}

eclipseProjectDir

Eclipse workspace directory.

  • Type : java.io.File
  • Required : No
  • Expression : ${eclipse.workspace}

manifest

The relative path of the manifest file

  • Type : java.io.File
  • Required : No
  • Expression : ${eclipse.manifest}
  • Default : ${basedir}/META-INF/MANIFEST.MF

pde

Is it an PDE project? If yes, the plugin adds the necessary natures and build commands to the .project file. Additionally it copies all libraries to a project local directory and references them instead of referencing the files in the local Maven repository. It also ensured that the "Bundle-Classpath" in META-INF/MANIFEST.MF is synchronized.

  • Type : boolean
  • Required : No
  • Expression : ${eclipse.pde}
  • Default : false

projectNameTemplate

Allows configuring the name of the eclipse projects. This property if set wins over addVersionToProjectName and addGroupIdToProjectName You can use [groupId], [artifactId] and [version] variables. eg. [groupId].[artifactId]-[version]

  • Type : java.lang.String
  • Required : No
  • Expression : ${eclipse.projectNameTemplate}

projectnatures

List of eclipse project natures. By default the org.eclipse.jdt.core.javanature nature plus the needed WTP natures are added. Natures added using this property replace the default list.

<projectnatures>
<projectnature>org.eclipse.jdt.core.javanature</projectnature>
<projectnature>org.eclipse.wst.common.modulecore.ModuleCoreNature</projectnature>
</projectnatures>

  • Type : java.util.List
  • Required : No

skip

Skip the operation when true.

  • Type : boolean
  • Required : No
  • Expression : ${eclipse.skip}
  • Default : false

useProjectReferences

When set to false, the plugin will not create sub-projects and instead reference those sub-projects using the installed package in the local repository

  • Type : boolean
  • Required : Yes
  • Expression : ${eclipse.useProjectReferences}
  • Default : true

wtpContextName

JEE context name of the WTP module. ( ex. WEB context name ).

  • Type : java.lang.String
  • Required : No
  • Expression : ${wtpContextName}
  • Default : ${project.artifactId}

wtpversion

The version of WTP for which configuration files will be generated. The default value is "none" (don't generate WTP configuration), supported versions are "R7", "1.0", and "1.5"

  • Type : java.lang.String
  • Required : No
  • Expression : ${wtpversion}
  • Default : none