Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 0 additions & 57 deletions src/site/apt/index.apt.vm

This file was deleted.

36 changes: 0 additions & 36 deletions src/site/apt/maven_checks.apt.vm

This file was deleted.

110 changes: 0 additions & 110 deletions src/site/apt/usage.apt.vm

This file was deleted.

47 changes: 47 additions & 0 deletions src/site/markdown/index.md.vm
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->

# ${project.name}

This is a collection of templates that are specific to the Maven project. They are probably not of interest to projects other than Apache Maven.

Below you will find a listing of the resources that can be found in the current version (${project.version}) of Maven Shared Resources. They are listed by which plugin they are meant to be used with.

Maven Checkstyle Plugin
-----------------------

#[[### `config/maven-header.txt`]]#

This is a license header template that can be used by Maven Checkstyle Plugin to verify that all files are using this license header.

#[[### [`config/maven_checks.xml`](./maven_checks.html)]]#

This is a Checkstyle configuration file for [Maven coding conventions](/developers/conventions/code.html) that can be used in Maven Checkstyle Plugin.

IntelliJ IDEA code formater
---------------------------

#[[### `config/maven-idea-codestyle-2022.xml`]]#

This is IntelliJ IDEA code formater which can be imported into IDE.

Usage
-----

General instructions on how to use the Maven Shared Resources can be found on the [usage page](./usage.html).
24 changes: 24 additions & 0 deletions src/site/markdown/maven_checks.md.vm
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->

# `config/maven_checks.xml`

This is a predefined ruleset for [Maven coding conventions](/developers/conventions/code.html) that can be used in Maven Checkstyle Plugin:

<!-- MACRO{snippet|file=${project.basedir}/src/main/resources/config/maven_checks.xml} -->
96 changes: 96 additions & 0 deletions src/site/markdown/usage.md.vm
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->

# Usage

There are a couple of things you need to do to use Maven Shared Resources. First you need to give the plugin that will use the resources access to them. After that you configure the plugin to actually use the resources.

Add the resources to the plugin
-------------------------------

First you add maven-shared-resources as a dependency to a plugin in your `pom.xml`. This is done to give the plugin access to the resources within the maven-shared-resources JAR file. In this example we will use the resources in Maven Checkstyle Plugin.

```xml
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.2.0</version>
<configuration>
...
</configuration>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
<executions>
...
</executions>
</plugin>
</plugins>
</build>
...
</project>
```

Configure the plugin to use the resources
-----------------------------------------

Now you can use the resources in the plugin. You can use them as if they existed in your own project, like this:

```xml
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<configLocation>config/maven_checks.xml</configLocation>
<headerLocation>config/maven-header.txt</headerLocation>
</configuration>
<dependencies>
...
</dependencies>
<executions>
...
</executions>
</plugin>
</plugins>
</build>
...
</project>
```

Execute the plugin
------------------

All is now set up to make use of the resources in the plugin for your project. Execute the plugin like you would normally do, to see the resources put to practical use.

```shell
mvn checkstyle:check
```