# Filesystem Utility Maven Plugin This is a maven plugin that provides filesystem utility based goals to Maven. ## Usage ```xml ... ... ... com.inteligr8 fs-maven-plugin ... mkdir-test generate-test-resources mkdir ${project.build.directory}/test-path ... ... ... ``` ## Goals | Goal | Description | | -------------------- | ----------- | | `mkdir` | Make one or more directories. | | `cp` | Copy a file. | | `mv` | Move a file. | ### Common Configuration Properties | Configuration Property | Data Type | Required | Default | Description | | ---------------------- |:-----------:|:--------:| ------- | ----------- | | `charset` | `string` | | `utf-8` | | | `skip` | `boolean` | | `false` | | | `verbose` | `boolean` | | `false` | | ### Goal: `mkdir` Make one or more directories. If one exists, it is skipped. | Configuration Property | Data Type | Required | Default | Description | | ---------------------- |:-----------:|:--------:| ------- | ----------- | | `paths` | `string[]` | Yes | | A set of `path` elements with `string` values. Do not use `/` or `c:\` to start paths, as those are FS specific. Either use relative paths or variable paths like `${project.build.directory}/...`. All path separators should be `/` (forward slash). | ### Goal: `cp` Copy a single file to a single file target. **This is written to be expanded to support fileset-based copies in later versions.** | Configuration Property | Data Type | Required | Default | Description | | ---------------------- |:-----------:|:--------:| ------- | ----------- | | `sourceFile` | `File` | Yes | | The path to a single file. Either use relative paths or variable paths like `${project.build.directory}/...`. All path separators should be '/' (forward slash). | | `targetFile` | `File` | Yes | | The path to a single file. Either use relative paths or variable paths like `${project.build.directory}/...`. All path separators should be '/' (forward slash). | ### Goal: `mv` Move a single file to a single file target. **This is written to be expanded to support fileset-based moves in later versions.** | Configuration Property | Data Type | Required | Default | Description | | ---------------------- |:-----------:|:--------:| ------- | ----------- | | `sourceFile` | `File` | Yes | | The path to a single file. Either use relative paths or variable paths like `${project.build.directory}/...`. All path separators should be '/' (forward slash). | | `targetFile` | `File` | Yes | | The path to a single file. Either use relative paths or variable paths like `${project.build.directory}/...`. All path separators should be '/' (forward slash). |