Fork me on GitHub

find-and-replace:find-and-replace

Full name:

io.github.floverfelt:find-and-replace-maven-plugin:1.0-SNAPSHOT:find-and-replace

Description:

The find and replace maven plugin will find a regex string in filenames, file contents, and directory names and replace it with a given value.

Attributes:

  • Requires a Maven project to be executed.

Required Parameters

Name Type Since Description
<findRegex> String - The regex string to find.
User property is: findRegex.
<replaceValue> String - The value to replace the matching findRegex with.
User property is: replaceValue.
<replacementType> String - A CSV of what type of replacement(s) being done. Valid values are: file-contents filenames directory-names

file-contents will replace the find regex within a file. filenames will replace the find regex within a file's name. directory-names will replace the find regex within a directory's name

To run the find and replace for multiple types, pass them as a CSV: file-contents,filenames,directory-names


User property is: replacementType.

Optional Parameters

Name Type Since Description
<baseDir> String - The base directory from which to perform the find and replace. This is relative to the location of the pom.
Default value is: ${basedir}.
User property is: baseDir.
<encoding> String - Specify file encoding during file-contents replacement

Default set to Charset.defaultCharset();


User property is: encoding.
<exclusions> String - Regex filenames/directory-names to exclude.
User property is: exclusions.
<fileMask> String - A CSV of the file types to search in. For example for the value: .xml Only files ending with .xml will be renamed.

For the value: .xml,.properties Only files ending with .xml,.properties will be renamed.

Ignored for directories.


User property is: fileMask.
<recursive> boolean - Whether the find and replace is recursive from the baseDir.
Default value is: false.
User property is: recursive.
<skip> boolean - Skip execution of the plugin.
Default value is: false.
User property is: skip.

Parameter Details

<baseDir>

The base directory from which to perform the find and replace. This is relative to the location of the pom.
  • Type: java.lang.String
  • Required: No
  • User Property: baseDir
  • Default: ${basedir}

<encoding>

Specify file encoding during file-contents replacement

Default set to Charset.defaultCharset();

  • Type: java.lang.String
  • Required: No
  • User Property: encoding

<exclusions>

Regex filenames/directory-names to exclude.
  • Type: java.lang.String
  • Required: No
  • User Property: exclusions

<fileMask>

A CSV of the file types to search in. For example for the value: .xml Only files ending with .xml will be renamed.

For the value: .xml,.properties Only files ending with .xml,.properties will be renamed.

Ignored for directories.

  • Type: java.lang.String
  • Required: No
  • User Property: fileMask

<findRegex>

The regex string to find.
  • Type: java.lang.String
  • Required: Yes
  • User Property: findRegex

<recursive>

Whether the find and replace is recursive from the baseDir.
  • Type: boolean
  • Required: No
  • User Property: recursive
  • Default: false

<replaceValue>

The value to replace the matching findRegex with.
  • Type: java.lang.String
  • Required: Yes
  • User Property: replaceValue

<replacementType>

A CSV of what type of replacement(s) being done. Valid values are: file-contents filenames directory-names

file-contents will replace the find regex within a file. filenames will replace the find regex within a file's name. directory-names will replace the find regex within a directory's name

To run the find and replace for multiple types, pass them as a CSV: file-contents,filenames,directory-names

  • Type: java.lang.String
  • Required: Yes
  • User Property: replacementType

<skip>

Skip execution of the plugin.
  • Type: boolean
  • Required: No
  • User Property: skip
  • Default: false