85 lines
3.6 KiB
Markdown
85 lines
3.6 KiB
Markdown
|
|
# Filesystem Utility Maven Plugin
|
|
|
|
This is a maven plugin that provides filesystem utility based goals to Maven.
|
|
|
|
## Usage
|
|
|
|
```xml
|
|
<project>
|
|
...
|
|
<build>
|
|
...
|
|
<plugins>
|
|
...
|
|
<plugin>
|
|
<groupId>com.inteligr8</groupId>
|
|
<artifactId>fs-maven-plugin</artifactId>
|
|
<version>...</version>
|
|
<executions>
|
|
<execution>
|
|
<id>mkdir-test</id>
|
|
<phase>generate-test-resources</phase>
|
|
<goals><goal>mkdir</goal></goals>
|
|
<configuration>
|
|
<directories>
|
|
<directory>${project.build.directory}/test-path</directory>
|
|
</directories>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
...
|
|
</plugins>
|
|
...
|
|
</build>
|
|
...
|
|
</project>
|
|
```
|
|
|
|
## 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). |
|