org.apache.maven.plugin.resources
Class ResourcesMojo

java.lang.Object
  extended by org.apache.maven.plugin.AbstractMojo
      extended by org.apache.maven.plugin.resources.ResourcesMojo
All Implemented Interfaces:
ContextEnabled, Mojo, org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable
Direct Known Subclasses:
CopyResourcesMojo, TestResourcesMojo

@Mojo(name="resources",
      defaultPhase=PROCESS_RESOURCES,
      threadSafe=true)
public class ResourcesMojo
extends AbstractMojo
implements org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable

Copy resources for the main source code to the main output directory. Always uses the project.build.resources element to specify the resources to copy.

Author:
Michal Maczka, Jason van Zyl, Andreas Hoheneder, William Ferguson

Field Summary
protected  List<String> buildFilters
          The list of additional filter properties files to be used along with System and project properties, which would be used for the filtering.
protected  List<String> delimiters
           Set of delimiters for expressions to filter within the resources.
protected  String encoding
          The character encoding scheme to be applied when filtering resources.
protected  String escapeString
          Expression preceded with the String won't be interpolated \${foo} will be replaced with ${foo}
protected  boolean escapeWindowsPaths
          Whether to escape backslashes and colons in windows-style paths.
protected  List<String> filters
          The list of extra filter properties files to be used along with System properties, project properties, and filter properties files specified in the POM build/filters section, which should be used for the filtering during the current mojo execution.
protected  boolean includeEmptyDirs
          Copy any empty directories included in the Resources.
protected  MavenResourcesFiltering mavenResourcesFiltering
           
protected  List<String> nonFilteredFileExtensions
          Additional file extensions to not apply filtering (already defined are : jpg, jpeg, gif, bmp, png)
protected  MavenProject project
           
protected  MavenSession session
           
protected  boolean useBuildFilters
          If false, don't use the filters specified in the build/filters section of the POM when processing resources in this mojo execution.
protected  boolean useDefaultDelimiters
           
 
Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE
 
Constructor Summary
ResourcesMojo()
           
 
Method Summary
 void contextualize(org.codehaus.plexus.context.Context context)
           
 void execute()
           
protected  void executeUserFilterComponents(MavenResourcesExecution mavenResourcesExecution)
           
protected  List<String> getCombinedFiltersList()
           
 List<String> getDelimiters()
           
 List<String> getFilters()
           
 File getOutputDirectory()
           
 List<Resource> getResources()
           
 boolean isIncludeEmptyDirs()
           
 boolean isOverwrite()
           
 boolean isUseDefaultDelimiters()
           
 void setDelimiters(List<String> delimiters)
           
 void setFilters(List<String> filters)
           
 void setIncludeEmptyDirs(boolean includeEmptyDirs)
           
 void setOutputDirectory(File outputDirectory)
           
 void setOverwrite(boolean overwrite)
           
 void setResources(List<Resource> resources)
           
 void setUseDefaultDelimiters(boolean useDefaultDelimiters)
           
 
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

encoding

@Parameter(property="encoding",
           defaultValue="${project.build.sourceEncoding}")
protected String encoding
The character encoding scheme to be applied when filtering resources.


project

@Parameter(defaultValue="${project}",
           required=true,
           readonly=true)
protected MavenProject project

buildFilters

@Parameter(defaultValue="${project.build.filters}",
           readonly=true)
protected List<String> buildFilters
The list of additional filter properties files to be used along with System and project properties, which would be used for the filtering.
See also: filters.

Since:
2.4

filters

@Parameter
protected List<String> filters
The list of extra filter properties files to be used along with System properties, project properties, and filter properties files specified in the POM build/filters section, which should be used for the filtering during the current mojo execution.
Normally, these will be configured from a plugin's execution section, to provide a different set of filters for a particular execution. For instance, starting in Maven 2.2.0, you have the option of configuring executions with the id's default-resources and default-testResources to supply different configurations for the two different types of resources. By supplying extraFilters configurations, you can separate which filters are used for which type of resource.


useBuildFilters

@Parameter(defaultValue="true")
protected boolean useBuildFilters
If false, don't use the filters specified in the build/filters section of the POM when processing resources in this mojo execution.
See also: buildFilters and filters

Since:
2.4

mavenResourcesFiltering

@Component(role=org.apache.maven.shared.filtering.MavenResourcesFiltering.class,
           hint="default")
protected MavenResourcesFiltering mavenResourcesFiltering

session

@Parameter(defaultValue="${session}",
           required=true,
           readonly=true)
protected MavenSession session

escapeString

@Parameter(property="maven.resources.escapeString")
protected String escapeString
Expression preceded with the String won't be interpolated \${foo} will be replaced with ${foo}

Since:
2.3

includeEmptyDirs

@Parameter(property="maven.resources.includeEmptyDirs",
           defaultValue="false")
protected boolean includeEmptyDirs
Copy any empty directories included in the Resources.

Since:
2.3

nonFilteredFileExtensions

@Parameter
protected List<String> nonFilteredFileExtensions
Additional file extensions to not apply filtering (already defined are : jpg, jpeg, gif, bmp, png)

Since:
2.3

escapeWindowsPaths

@Parameter(property="maven.resources.escapeWindowsPaths",
           defaultValue="true")
protected boolean escapeWindowsPaths
Whether to escape backslashes and colons in windows-style paths.

Since:
2.4

delimiters

@Parameter
protected List<String> delimiters

Set of delimiters for expressions to filter within the resources. These delimiters are specified in the form 'beginToken*endToken'. If no '*' is given, the delimiter is assumed to be the same for start and end.

So, the default filtering delimiters might be specified as:

 <delimiters>
   <delimiter>${*}</delimiter>
   <delimiter>@</delimiter>
 </delimiters>
 

Since the '@' delimiter is the same on both ends, we don't need to specify '@*@' (though we can).

Since:
2.4

useDefaultDelimiters

@Parameter(defaultValue="true")
protected boolean useDefaultDelimiters
Since:
2.4
Constructor Detail

ResourcesMojo

public ResourcesMojo()
Method Detail

contextualize

public void contextualize(org.codehaus.plexus.context.Context context)
                   throws org.codehaus.plexus.context.ContextException
Specified by:
contextualize in interface org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable
Throws:
org.codehaus.plexus.context.ContextException

execute

public void execute()
             throws MojoExecutionException
Specified by:
execute in interface Mojo
Throws:
MojoExecutionException

executeUserFilterComponents

protected void executeUserFilterComponents(MavenResourcesExecution mavenResourcesExecution)
                                    throws MojoExecutionException,
                                           MavenFilteringException
Throws:
MojoExecutionException
MavenFilteringException
Since:
2.5

getCombinedFiltersList

protected List<String> getCombinedFiltersList()

getResources

public List<Resource> getResources()

setResources

public void setResources(List<Resource> resources)

getOutputDirectory

public File getOutputDirectory()

setOutputDirectory

public void setOutputDirectory(File outputDirectory)

isOverwrite

public boolean isOverwrite()

setOverwrite

public void setOverwrite(boolean overwrite)

isIncludeEmptyDirs

public boolean isIncludeEmptyDirs()

setIncludeEmptyDirs

public void setIncludeEmptyDirs(boolean includeEmptyDirs)

getFilters

public List<String> getFilters()

setFilters

public void setFilters(List<String> filters)

getDelimiters

public List<String> getDelimiters()

setDelimiters

public void setDelimiters(List<String> delimiters)

isUseDefaultDelimiters

public boolean isUseDefaultDelimiters()

setUseDefaultDelimiters

public void setUseDefaultDelimiters(boolean useDefaultDelimiters)


Copyright © 2001-2012 The Apache Software Foundation. All Rights Reserved.