Compare commits
202 Commits
maven-plug
...
master
| Author | SHA1 | Date |
|---|---|---|
|
|
7fcab60985 | |
|
|
d682b25820 | |
|
|
a7fc242de5 | |
|
|
8d1ba27e95 | |
|
|
f99796ee68 | |
|
|
a3371bc6fb | |
|
|
e564b8d54d | |
|
|
d38ef497bc | |
|
|
92f5eaaa3d | |
|
|
d484f85160 | |
|
|
04684f0fc3 | |
|
|
e44bb78aff | |
|
|
1f70e4ea47 | |
|
|
3ec7f6f61d | |
|
|
bcf94564ba | |
|
|
6fda7882f1 | |
|
|
e430efe682 | |
|
|
e598cdfd30 | |
|
|
053932347f | |
|
|
81eb53a1c5 | |
|
|
49349dee7a | |
|
|
f50e9ebb58 | |
|
|
117eaf66a5 | |
|
|
365f900755 | |
|
|
d49dbb8b79 | |
|
|
89a82c2963 | |
|
|
f223b01735 | |
|
|
2767d04ccb | |
|
|
5e063a0907 | |
|
|
4bd90ea35f | |
|
|
4ac5b187dc | |
|
|
3aaa8d275c | |
|
|
e0fe0f017f | |
|
|
176760d3f9 | |
|
|
197e306311 | |
|
|
79490bad16 | |
|
|
52c7bcc7c0 | |
|
|
15180d93b0 | |
|
|
c20a5f300b | |
|
|
f0d7f725a4 | |
|
|
629dd38f3d | |
|
|
ec99a5982d | |
|
|
6992f7719b | |
|
|
9963ca473d | |
|
|
dacb6e6b6d | |
|
|
9a7fd1e70d | |
|
|
34920f0a2c | |
|
|
7c58d51900 | |
|
|
372526b052 | |
|
|
22fcf70b89 | |
|
|
a44d4f1719 | |
|
|
7dd7d23ebf | |
|
|
250f72677d | |
|
|
8fd7093a5c | |
|
|
1525c61b93 | |
|
|
51a8d562ad | |
|
|
7b952b87a3 | |
|
|
547e3868c7 | |
|
|
257e61a72e | |
|
|
e982dbf1c6 | |
|
|
6edd624afc | |
|
|
cc006dbd8e | |
|
|
0fec67e0eb | |
|
|
4b16f1d883 | |
|
|
267e446889 | |
|
|
e3b6db6b40 | |
|
|
45a627148b | |
|
|
4eaf2678a2 | |
|
|
8e51a50e0b | |
|
|
bfc52d95df | |
|
|
5ab96a0efb | |
|
|
e8dfae0cbc | |
|
|
b622b0198e | |
|
|
409d56c504 | |
|
|
7fdabadb3c | |
|
|
75987012b1 | |
|
|
7a2ed415cd | |
|
|
732b82b2da | |
|
|
3b54fdbc28 | |
|
|
4167674992 | |
|
|
7500654003 | |
|
|
3394354af1 | |
|
|
7426d551af | |
|
|
35ca9b5a80 | |
|
|
0f464acc12 | |
|
|
fa0a5fc105 | |
|
|
99359ef1b6 | |
|
|
b0fd53aaa7 | |
|
|
d988e0b43c | |
|
|
1089b54c3f | |
|
|
6984e9d27f | |
|
|
5af1f627a8 | |
|
|
de5875e0af | |
|
|
9e1a66d448 | |
|
|
b13ad1288e | |
|
|
bdb03e597c | |
|
|
1f029f5fb1 | |
|
|
5c7faf1b8e | |
|
|
599b468d0d | |
|
|
a1b3723559 | |
|
|
66444b15df | |
|
|
311aa09218 | |
|
|
58a8f57588 | |
|
|
f516f754c5 | |
|
|
f10b51e352 | |
|
|
936f421eab | |
|
|
7bc6873931 | |
|
|
045ab59621 | |
|
|
1190048b92 | |
|
|
f8c4b373e7 | |
|
|
00288684b1 | |
|
|
4dc8598822 | |
|
|
e1fb52356f | |
|
|
2aa4a2c9cd | |
|
|
e0b306c105 | |
|
|
3bb1fbf154 | |
|
|
f36105f19c | |
|
|
a2602cf139 | |
|
|
f0a8bb4b3a | |
|
|
4e00ec6fc3 | |
|
|
f224aa88c6 | |
|
|
bb948bfbc8 | |
|
|
660e74e052 | |
|
|
b0b5558bc0 | |
|
|
ebf0b9465e | |
|
|
11054a8bce | |
|
|
e2504fa821 | |
|
|
e1e487489f | |
|
|
daf8877b3d | |
|
|
63a11167e0 | |
|
|
32a8740e72 | |
|
|
c6e68e8d48 | |
|
|
2bcc4fc6e9 | |
|
|
ca9c92eaab | |
|
|
c0ba1194b1 | |
|
|
37b87d5ef5 | |
|
|
10d0a99bec | |
|
|
a6eab7460b | |
|
|
ba103c598f | |
|
|
5d6415745b | |
|
|
c339131883 | |
|
|
b8b9a466aa | |
|
|
6d936298d3 | |
|
|
62561197e8 | |
|
|
58f5506c59 | |
|
|
f8a946df81 | |
|
|
4db874b18f | |
|
|
df4ae65314 | |
|
|
8f0a5ee56a | |
|
|
4f4c32b9dc | |
|
|
1de6bf4e70 | |
|
|
a28ba3d065 | |
|
|
166e0f7215 | |
|
|
837f681ee8 | |
|
|
52446a83ea | |
|
|
bfcfcaef95 | |
|
|
485b860846 | |
|
|
e020e993df | |
|
|
3e30bae1a5 | |
|
|
191200d6f4 | |
|
|
feedd25653 | |
|
|
6a8cd85aad | |
|
|
0d809ca731 | |
|
|
8c4c09bf1b | |
|
|
266d573247 | |
|
|
abd5f5966a | |
|
|
60184b7dbd | |
|
|
dfd7b1b1ae | |
|
|
c163b34e7e | |
|
|
a9f44394d6 | |
|
|
665f29590a | |
|
|
55423bbe43 | |
|
|
d7e27e6bd0 | |
|
|
9a8f79c110 | |
|
|
3ed2aef1df | |
|
|
c497984b82 | |
|
|
0c5a83e673 | |
|
|
f3e2aa95c4 | |
|
|
264d24fc4d | |
|
|
337b88b68f | |
|
|
9c26ce960d | |
|
|
a1e15b0b7b | |
|
|
d7d64cbe0e | |
|
|
d827052906 | |
|
|
0a4d198a47 | |
|
|
10acc051bf | |
|
|
ef3b5a16ba | |
|
|
9029098178 | |
|
|
425b95b909 | |
|
|
fecb6817e2 | |
|
|
0d3bc50059 | |
|
|
5fe4d7d344 | |
|
|
fcc328fb6e | |
|
|
435fbb1d04 | |
|
|
f67446b914 | |
|
|
3bc4d86dba | |
|
|
411ab0bb48 | |
|
|
40397727da | |
|
|
215037c7e5 | |
|
|
7627ead935 | |
|
|
f4ba12c794 | |
|
|
befacc9f58 |
|
|
@ -3,6 +3,7 @@ target
|
|||
#idea
|
||||
*.iml
|
||||
.idea
|
||||
out/
|
||||
|
||||
#eclipse
|
||||
.classpath
|
||||
|
|
@ -10,3 +11,5 @@ target
|
|||
.settings
|
||||
|
||||
.DS_Store
|
||||
|
||||
.java-version
|
||||
|
|
|
|||
|
|
@ -0,0 +1 @@
|
|||
asfMavenStdBuild(javaVersions:['8','7'])
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
#!/bin/sh
|
||||
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
mvn -Preporting site site:stage $@
|
||||
mvn scm-publish:publish-scm $@
|
||||
|
|
@ -23,13 +23,13 @@
|
|||
<parent>
|
||||
<artifactId>maven-plugin-tools</artifactId>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<version>3.2</version>
|
||||
<version>3.5.1-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
|
||||
<name>Maven Plugin Java 5 Annotations</name>
|
||||
<description>Java 5 annotations to use in Mojos.</description>
|
||||
<name>Maven Plugin Tools Java 5 Annotations</name>
|
||||
<description>Java 5 annotations to use in Mojos</description>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
|
|
|
|||
|
|
@ -29,15 +29,7 @@ import java.lang.annotation.Target;
|
|||
/**
|
||||
* Used to configure injection of Plexus components by
|
||||
* <a href="/ref/current/maven-core/apidocs/org/apache/maven/plugin/MavenPluginManager.html">
|
||||
* <code>MavenPluginManager.getConfiguredMojo(...)</code></a> and special Maven
|
||||
* objects as well:
|
||||
* <dl>
|
||||
* <dt>mojoExecution</dt> <dd>org.apache.maven.plugin.MojoExecution</dd>
|
||||
* <dt>project</dt> <dd>org.apache.maven.project.MavenProject</dd>
|
||||
* <dt>session</dt> <dd>org.apache.maven.execution.MavenSession</dd>
|
||||
* <dt>settings</dt> <dd>org.apache.maven.settings.Settings</dd>
|
||||
* <dt>plugin (Maven-3 only)</dt><dd>org.apache.maven.plugin.descriptor.PluginDescriptor</dd>
|
||||
* </dl>
|
||||
* <code>MavenPluginManager.getConfiguredMojo(...)</code></a>.
|
||||
*
|
||||
* @author Olivier Lamy
|
||||
* @since 3.0
|
||||
|
|
|
|||
|
|
@ -39,13 +39,13 @@ import java.lang.annotation.Target;
|
|||
public @interface Execute
|
||||
{
|
||||
/**
|
||||
* lifecycle phase to fork.
|
||||
* lifecycle phase to fork. Note that specifying a phase overrides specifying a goal.
|
||||
* @return the phase
|
||||
*/
|
||||
LifecyclePhase phase() default LifecyclePhase.NONE;
|
||||
|
||||
/**
|
||||
* goal to fork.
|
||||
* goal to fork. Note that specifying a phase overrides specifying a goal.
|
||||
* @return the goal
|
||||
*/
|
||||
String goal() default "";
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ package org.apache.maven.plugins.annotations;
|
|||
*/
|
||||
|
||||
/**
|
||||
* Component instanciation strategy.
|
||||
* Component instantiation strategy.
|
||||
*
|
||||
* @author Hervé Boutemy
|
||||
* @since 3.0
|
||||
|
|
@ -34,7 +34,7 @@ public enum InstantiationStrategy
|
|||
|
||||
private final String id;
|
||||
|
||||
InstantiationStrategy(String id)
|
||||
InstantiationStrategy( String id )
|
||||
{
|
||||
this.id = id;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -52,13 +52,13 @@ public @interface Mojo
|
|||
|
||||
/**
|
||||
* the required dependency resolution scope.
|
||||
* @return
|
||||
* @return the required dependency resolution scope
|
||||
*/
|
||||
ResolutionScope requiresDependencyResolution() default ResolutionScope.NONE;
|
||||
|
||||
/**
|
||||
* the required dependency collection scope.
|
||||
* @return
|
||||
* @return the required dependency collection scope
|
||||
*/
|
||||
ResolutionScope requiresDependencyCollection() default ResolutionScope.NONE;
|
||||
|
||||
|
|
@ -68,14 +68,6 @@ public @interface Mojo
|
|||
*/
|
||||
InstantiationStrategy instantiationStrategy() default InstantiationStrategy.PER_LOOKUP;
|
||||
|
||||
/**
|
||||
* The original spelling of the instantiationStrategy attribute.
|
||||
* @see #instantiationStrategy()
|
||||
* @return the instantiation strategy
|
||||
*/
|
||||
@Deprecated
|
||||
InstanciationStrategy instanciationStrategy() default InstanciationStrategy.PER_LOOKUP;
|
||||
|
||||
/**
|
||||
* execution strategy: <code>once-per-session</code> or <code>always</code>.
|
||||
* @return <code>once-per-session</code> or <code>always</code>
|
||||
|
|
@ -84,31 +76,31 @@ public @interface Mojo
|
|||
|
||||
/**
|
||||
* does your mojo requires a project to be executed?
|
||||
* @return
|
||||
* @return requires a project
|
||||
*/
|
||||
boolean requiresProject() default true;
|
||||
|
||||
/**
|
||||
* does your mojo requires a reporting context to be executed?
|
||||
* @return
|
||||
* @return requires a reporting context
|
||||
*/
|
||||
boolean requiresReports() default false;
|
||||
|
||||
/**
|
||||
* if the Mojo uses the Maven project and its child modules.
|
||||
* @return
|
||||
* @return uses the Maven project and its child modules
|
||||
*/
|
||||
boolean aggregator() default false;
|
||||
|
||||
/**
|
||||
* can this Mojo be invoked directly only?
|
||||
* @return
|
||||
* @return invoked directly only
|
||||
*/
|
||||
boolean requiresDirectInvocation() default false;
|
||||
|
||||
/**
|
||||
* does this Mojo need to be online to be executed?
|
||||
* @return
|
||||
* @return need to be online
|
||||
*/
|
||||
boolean requiresOnline() default false;
|
||||
|
||||
|
|
@ -116,13 +108,13 @@ public @interface Mojo
|
|||
|
||||
/**
|
||||
* own configurator class.
|
||||
* @return
|
||||
* @return own configurator class
|
||||
*/
|
||||
String configurator() default "";
|
||||
|
||||
/**
|
||||
* is your mojo thread safe (since Maven 3.x)?
|
||||
* @return
|
||||
* @return is thread safe
|
||||
*/
|
||||
boolean threadSafe() default false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -40,6 +40,12 @@ import java.lang.annotation.Target;
|
|||
@Inherited
|
||||
public @interface Parameter
|
||||
{
|
||||
/**
|
||||
* name of the bean property used to get/set the field: by default, field name is used.
|
||||
* @return the name of the bean property
|
||||
*/
|
||||
String name() default "";
|
||||
|
||||
/**
|
||||
* alias supported to get parameter value.
|
||||
* @return the alias
|
||||
|
|
@ -47,7 +53,8 @@ public @interface Parameter
|
|||
String alias() default "";
|
||||
|
||||
/**
|
||||
* Property to use to retrieve a value. Can come from <code>-D</code> execution, setting properties or pom properties.
|
||||
* Property to use to retrieve a value. Can come from <code>-D</code> execution, setting properties or pom
|
||||
* properties.
|
||||
* @return property name
|
||||
*/
|
||||
String property() default "";
|
||||
|
|
|
|||
|
|
@ -32,18 +32,7 @@ About ${project.name}
|
|||
|
||||
* Usage
|
||||
|
||||
To be able to {{{../maven-plugin-tools-annotations/index.html}use Maven Plugin Java 5 Annotations}},
|
||||
add this artifact to your project dependencies in <<<pom.xml>>>:
|
||||
|
||||
+--------+
|
||||
<project>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
+--------+
|
||||
To be able to {{{../maven-plugin-tools-annotations/index.html}use Maven Plugin Tools Java 5 Annotations}},
|
||||
some configuration has to be done in <<<pom.xml>>>: see
|
||||
{{{../maven-plugin-plugin/examples/using-annotations.html#POM_configuration} Using Plugin Tools Java5 Annotations}}
|
||||
example in {{{../maven-plugin-plugin} <<<maven-plugin-plugin>>>}} documentation.
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@
|
|||
<parent>
|
||||
<artifactId>maven-plugin-tools</artifactId>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<version>3.2</version>
|
||||
<version>3.5.1-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
|
|
@ -38,20 +38,46 @@
|
|||
</description>
|
||||
|
||||
<prerequisites>
|
||||
<maven>2.0.6</maven>
|
||||
<maven>2.2.1</maven>
|
||||
</prerequisites>
|
||||
|
||||
<properties>
|
||||
<doxiaVersion>1.2</doxiaVersion>
|
||||
<doxia-sitetoolsVersion>1.2</doxia-sitetoolsVersion>
|
||||
<doxiaVersion>1.4</doxiaVersion>
|
||||
<doxia-sitetoolsVersion>1.4</doxia-sitetoolsVersion>
|
||||
<it.debug>true</it.debug>
|
||||
<mavenPluginPluginVersion>3.1</mavenPluginPluginVersion>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-tools-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-tools-generators</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- runtime extractors used by default by plugin-tools -->
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-tools-java</artifactId>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-tools-annotations</artifactId>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<!-- for source code annotations of the mojos -->
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
<!-- from stricter view, should use ${mavenPluginToolsVersion} but this is causing problems with release plugin -->
|
||||
<!--version>${mavenPluginToolsVersion}</version-->
|
||||
<!--
|
||||
Do not use 'provided' scope here. The annotations are a transitive dependency of
|
||||
'maven-plugin-tools-annotations' which fails to load at runtime when not available.
|
||||
-->
|
||||
</dependency>
|
||||
|
||||
<!-- doxia -->
|
||||
|
|
@ -76,7 +102,7 @@
|
|||
</exclusions>
|
||||
</dependency>
|
||||
|
||||
<!-- maven -->
|
||||
<!-- Maven -->
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-plugin-api</artifactId>
|
||||
|
|
@ -103,15 +129,6 @@
|
|||
<artifactId>maven-plugin-registry</artifactId>
|
||||
<version>${mavenVersion}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-tools-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-tools-generators</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-artifact-manager</artifactId>
|
||||
|
|
@ -126,7 +143,7 @@
|
|||
<dependency>
|
||||
<groupId>org.apache.maven.reporting</groupId>
|
||||
<artifactId>maven-reporting-impl</artifactId>
|
||||
<version>2.1</version><!-- 2.2 causes IT failure with mvn 2.2.1 -->
|
||||
<version>2.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.reporting</groupId>
|
||||
|
|
@ -134,23 +151,6 @@
|
|||
<version>3.0</version>
|
||||
</dependency>
|
||||
|
||||
<!-- Maven runtime -->
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-tools-java</artifactId>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-tools-beanshell</artifactId>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-tools-model</artifactId>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
<!-- plexus -->
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus</groupId>
|
||||
|
|
@ -167,6 +167,13 @@
|
|||
</exclusions>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.surefire</groupId>
|
||||
<artifactId>maven-surefire-common</artifactId>
|
||||
<version>2.19.1</version>
|
||||
</dependency>
|
||||
|
||||
|
||||
<!-- other -->
|
||||
<dependency>
|
||||
<groupId>org.apache.velocity</groupId>
|
||||
|
|
@ -190,6 +197,29 @@
|
|||
</dependencies>
|
||||
|
||||
<build>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>src/main/resources</directory>
|
||||
</resource>
|
||||
<resource>
|
||||
<directory>src/main/filtered-resources</directory>
|
||||
<filtering>true</filtering>
|
||||
</resource>
|
||||
</resources>
|
||||
<pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.rat</groupId>
|
||||
<artifactId>apache-rat-plugin</artifactId>
|
||||
<configuration>
|
||||
<excludes combine.children="append">
|
||||
<!-- This file should exactly match the output of this project -->
|
||||
<exclude>src/it/help-basic/expected-help.txt</exclude>
|
||||
</excludes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.modello</groupId>
|
||||
|
|
@ -234,21 +264,21 @@
|
|||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<configuration>
|
||||
<skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
|
||||
</configuration>
|
||||
<version>3.5</version>
|
||||
<!-- will use previous maven-plugin-plugin release to build current maven-plugin-plugin as configured in parent -->
|
||||
<executions>
|
||||
<execution>
|
||||
<id>mojo-descriptor</id>
|
||||
<goals>
|
||||
<goal>descriptor</goal>
|
||||
</goals>
|
||||
<id>default-descriptor</id>
|
||||
<phase>process-classes</phase>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>generated-helpmojo</id>
|
||||
<goals>
|
||||
<goal>helpmojo</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
|
@ -260,6 +290,7 @@
|
|||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>3.3</version><!-- cannot use ${mavenPluginToolsVersion} property because release plugin would try to update -->
|
||||
<reportSets>
|
||||
<reportSet>
|
||||
<reports>
|
||||
|
|
@ -333,17 +364,18 @@
|
|||
<debug>${it.debug}</debug>
|
||||
<projectsDirectory>src/it</projectsDirectory>
|
||||
<cloneProjectsTo>${project.build.directory}/it</cloneProjectsTo>
|
||||
<pomIncludes>
|
||||
<pomInclude>*/pom.xml</pomInclude>
|
||||
</pomIncludes>
|
||||
<preBuildHookScript>setup</preBuildHookScript>
|
||||
<postBuildHookScript>verify</postBuildHookScript>
|
||||
<localRepositoryPath>${project.build.directory}/local-repo</localRepositoryPath>
|
||||
<settingsFile>src/it/settings.xml</settingsFile>
|
||||
<filterProperties>
|
||||
<sitePluginVersion>3.0</sitePluginVersion>
|
||||
<sitePluginVersion>3.3</sitePluginVersion>
|
||||
<antVersion>${antVersion}</antVersion>
|
||||
</filterProperties>
|
||||
<properties>
|
||||
<maven.compiler.source>${maven.compiler.source}</maven.compiler.source>
|
||||
<maven.compiler.target>${maven.compiler.target}</maven.compiler.target>
|
||||
</properties>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
|
|
@ -357,14 +389,35 @@
|
|||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-tools-annotations</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<classifier>tests</classifier>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>maven-2</id>
|
||||
<activation>
|
||||
<file>
|
||||
<!-- This employs that the basedir expression is only recognized by Maven 3.x (see MNG-2363) -->
|
||||
<missing>${basedir}</missing>
|
||||
</file>
|
||||
</activation>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<configuration>
|
||||
<!-- see https://issues.apache.org/jira/browse/MNG-5346 -->
|
||||
<skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>mojo-descriptor</id>
|
||||
<goals>
|
||||
<goal>descriptor</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
</profiles>
|
||||
</project>
|
||||
|
|
|
|||
|
|
@ -1,3 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = install
|
||||
invoker.goals.2 = org.apache.maven.its.annotation-with-inheritance-from-deps:annotation-with-inheritance-from-deps:1.0-SNAPSHOT:first
|
||||
invoker.goals.3 = org.apache.maven.its.annotation-with-inheritance-from-deps:annotation-with-inheritance-from-deps:1.0-SNAPSHOT:help
|
||||
|
|
|
|||
|
|
@ -62,6 +62,13 @@ under the License.
|
|||
<version>@project.version@</version>
|
||||
<classifier>tests</classifier>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<!-- dependency of org.apache.maven.plugin-tools:maven-plugin-tools-annotations:@project.version@:jar:tests -->
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>3.8.2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus</groupId>
|
||||
<artifactId>plexus-compiler-manager</artifactId>
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ import org.apache.maven.plugins.annotations.Execute;
|
|||
import org.apache.maven.plugins.annotations.LifecyclePhase;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
import org.apache.maven.tools.plugin.annotations.FooMojo;
|
||||
import org.apache.maven.tools.plugin.extractor.annotations.FooMojo;
|
||||
import org.apache.maven.project.MavenProjectHelper;
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -1,3 +1,23 @@
|
|||
<?xml version='1.0'?>
|
||||
<!--
|
||||
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.
|
||||
-->
|
||||
|
||||
<lifecycles>
|
||||
<lifecycle>
|
||||
<id>my-lifecycle</id>
|
||||
|
|
|
|||
|
|
@ -1,3 +1,21 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File descriptorFile = new File( basedir, "target/classes/META-INF/maven/plugin.xml" );
|
||||
assert descriptorFile.isFile()
|
||||
|
|
|
|||
|
|
@ -1,3 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
invoker.goals.2 = org.apache.maven.its.annotation-with-inheritance-reactor:module-mojo:1.0-SNAPSHOT:it0014
|
||||
invoker.goals.3 = org.apache.maven.its.annotation-with-inheritance-reactor:module-mojo:1.0-SNAPSHOT:first
|
||||
|
|
|
|||
|
|
@ -1,3 +1,23 @@
|
|||
<?xml version='1.0'?>
|
||||
<!--
|
||||
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.
|
||||
-->
|
||||
|
||||
<lifecycles>
|
||||
<lifecycle>
|
||||
<id>cobertura</id>
|
||||
|
|
|
|||
|
|
@ -50,6 +50,13 @@ under the License.
|
|||
<version>@project.version@</version>
|
||||
<classifier>tests</classifier>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<!-- dependency of org.apache.maven.plugin-tools:maven-plugin-tools-annotations:@project.version@:jar:tests -->
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>3.8.2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-project</artifactId>
|
||||
|
|
|
|||
|
|
@ -1,3 +1,22 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File touchFile = new File( basedir, "module-mojo/target/touch.txt" )
|
||||
assert touchFile.isFile()
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
invoker.goals.2 = org.apache.maven.its.annotation-with-inheritance:annotation-with-inheritance:1.0-SNAPSHOT:it0014
|
||||
invoker.goals.3 = org.apache.maven.its.annotation-with-inheritance:annotation-with-inheritance:1.0-SNAPSHOT:first
|
||||
|
|
|
|||
|
|
@ -1,3 +1,23 @@
|
|||
<?xml version='1.0'?>
|
||||
<!--
|
||||
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.
|
||||
-->
|
||||
|
||||
<lifecycles>
|
||||
<lifecycle>
|
||||
<id>cobertura</id>
|
||||
|
|
|
|||
|
|
@ -1,3 +1,22 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File touchFile = new File( basedir, "target/touch.txt" )
|
||||
assert touchFile.isFile()
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
invoker.goals.2 = org.apache.maven.ant.it:maven-ant-it-basic:1.0-SNAPSHOT:touch -Dname=touch.txt
|
||||
|
||||
|
|
|
|||
|
|
@ -19,8 +19,10 @@
|
|||
~ under the License.
|
||||
-->
|
||||
<!-- START SNIPPET: ant-mojo -->
|
||||
<pluginMetadata xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/plugin-metadata-1.0.0.xsd">
|
||||
<pluginMetadata
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://maven.apache.org/PLUGIN-METADATA/1.1.0"
|
||||
xsi:schemaLocation="http://maven.apache.org/PLUGIN-METADATA/1.1.0 http://maven.apache.org/xsd/plugin-metadata-1.1.0.xsd">
|
||||
<mojos>
|
||||
<mojo>
|
||||
<!-- target name to call in ant script -->
|
||||
|
|
|
|||
|
|
@ -1,3 +1,22 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File touchFile = new File( basedir, "target/touch.txt" )
|
||||
assert touchFile.isFile()
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
invoker.goals.2 = org.apache.maven.ant.it:maven-ant-it-referenceParameter:1.0-SNAPSHOT:test
|
||||
|
||||
|
|
|
|||
|
|
@ -18,8 +18,10 @@
|
|||
~ specific language governing permissions and limitations
|
||||
~ under the License.
|
||||
-->
|
||||
|
||||
<pluginMetadata xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 ../../../../../../maven-plugin-tools-model/target/generated-site/xsd/plugin-metadata-1.0.0.xsd ">
|
||||
<pluginMetadata
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://maven.apache.org/PLUGIN-METADATA/1.0.0"
|
||||
xsi:schemaLocation="http://maven.apache.org/PLUGIN-METADATA/1.0.0 http://maven.apache.org/xsd/plugin-metadata-1.0.0.xsd">
|
||||
<mojos>
|
||||
<mojo>
|
||||
<call>test</call>
|
||||
|
|
|
|||
|
|
@ -1,3 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
#invoker.goals.2 = org.apache.maven.ant.it:maven-ant-it-referenceParameter:1.0-SNAPSHOT:test
|
||||
|
||||
|
|
|
|||
|
|
@ -18,8 +18,10 @@
|
|||
~ specific language governing permissions and limitations
|
||||
~ under the License.
|
||||
-->
|
||||
|
||||
<pluginMetadata xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 ../../../../../../maven-plugin-tools-model/target/generated-site/xsd/plugin-metadata-1.0.0.xsd ">
|
||||
<pluginMetadata
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://maven.apache.org/PLUGIN-METADATA/1.0.0"
|
||||
xsi:schemaLocation="http://maven.apache.org/PLUGIN-METADATA/1.0.0 http://maven.apache.org/xsd/plugin-metadata-1.0.0.xsd">
|
||||
<mojos>
|
||||
<mojo>
|
||||
<call>test</call>
|
||||
|
|
|
|||
|
|
@ -17,7 +17,10 @@
|
|||
~ specific language governing permissions and limitations
|
||||
~ under the License.
|
||||
-->
|
||||
<pluginMetadata>
|
||||
<pluginMetadata
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://maven.apache.org/PLUGIN-METADATA/1.1.0"
|
||||
xsi:schemaLocation="http://maven.apache.org/PLUGIN-METADATA/1.1.0 http://maven.apache.org/xsd/plugin-metadata-1.1.0.xsd">
|
||||
<mojos>
|
||||
<mojo>
|
||||
<goal>sample</goal>
|
||||
|
|
|
|||
|
|
@ -1,3 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
invoker.goals.2 = org.apache.maven.beanshell.it:maven-beanshell-it-basic:1.0-SNAPSHOT:touch -Dname=touch.txt
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,22 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
// START SNIPPET: beanshell-mojo
|
||||
/**
|
||||
* Touches a test file.
|
||||
|
|
@ -43,4 +62,4 @@ setName( name )
|
|||
}
|
||||
|
||||
return new BeanshellMojoAdapter( (Mojo) this, this.interpreter );
|
||||
// END SNIPPET: beanshell-mojo
|
||||
// END SNIPPET: beanshell-mojo
|
||||
|
|
|
|||
|
|
@ -1,3 +1,22 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File touchFile = new File( basedir, "target/touch.txt" )
|
||||
assert touchFile.exists()
|
||||
assert touchFile.isFile()
|
||||
|
|
|
|||
|
|
@ -17,7 +17,10 @@
|
|||
~ specific language governing permissions and limitations
|
||||
~ under the License.
|
||||
-->
|
||||
<pluginMetadata>
|
||||
<pluginMetadata
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://maven.apache.org/PLUGIN-METADATA/1.1.0"
|
||||
xsi:schemaLocation="http://maven.apache.org/PLUGIN-METADATA/1.1.0 http://maven.apache.org/xsd/plugin-metadata-1.1.0.xsd">
|
||||
<mojos>
|
||||
<mojo>
|
||||
<goal>sample</goal>
|
||||
|
|
|
|||
|
|
@ -1,3 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean install site
|
||||
invoker.maven.version = 3.0+
|
||||
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@
|
|||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-site-plugin</artifactId>
|
||||
<version>3.0</version>
|
||||
<version>@sitePluginVersion@</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
|
|
|
|||
|
|
@ -1,3 +1,22 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File touchFile = new File( basedir, "antsample-maven-plugin/target/site/sample-mojo.html" )
|
||||
assert touchFile.exists()
|
||||
assert touchFile.isFile()
|
||||
|
|
|
|||
|
|
@ -0,0 +1,25 @@
|
|||
[INFO] help 1.0-SNAPSHOT
|
||||
Tests generation and compilation of the help mojo.
|
||||
|
||||
help:test
|
||||
Deprecated. As of 1.0, use the "quoted" goal instead.
|
||||
|
||||
MOJO-DESCRIPTION. Some 'quotation' marks and backslashes '\\', some important
|
||||
javadoc
|
||||
and an inline link to AnotherMojo.
|
||||
|
||||
Available parameters:
|
||||
|
||||
defaultParam (Default: escape\backslash)
|
||||
This parameter uses 'quotation' marks and backslashes '\\' in its
|
||||
description. Those characters must be escaped in Java string literals.
|
||||
|
||||
deprecatedParam
|
||||
Deprecated. As of version 1.0, use the {@link #defaultParam} instead.
|
||||
|
||||
This parameter is deprecated.
|
||||
|
||||
undocumentedParam
|
||||
|
||||
Required: Yes
|
||||
User property: test.undocumented
|
||||
|
|
@ -1,2 +1,23 @@
|
|||
# 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.
|
||||
|
||||
invoker.maven.version = 3.0+
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
invoker.goals.2 = org.apache.maven.its.plugin:help:1.0-SNAPSHOT:help
|
||||
invoker.goals.3 = --log-file help.log org.apache.maven.its.plugin:help:1.0-SNAPSHOT:help
|
||||
# --log-file option is only supported by Maven 3
|
||||
invoker.maven.version = 3.0+
|
||||
|
|
|
|||
|
|
@ -46,6 +46,12 @@ under the License.
|
|||
<artifactId>plexus-utils</artifactId>
|
||||
<version>3.0.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
<version>@project.version@</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
|
@ -64,6 +70,10 @@ under the License.
|
|||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>@project.version@</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>default-descriptor</id>
|
||||
<phase>process-classes</phase>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>help-goal</id>
|
||||
<goals>
|
||||
|
|
|
|||
|
|
@ -1,15 +1,36 @@
|
|||
package test;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
|
||||
/**
|
||||
* MOJO-DESCRIPTION. Some "quotation" marks and backslashes '\\', some <strong>important</strong> javadoc<br> and an
|
||||
* inline link to {@link test.AnotherMojo}.
|
||||
*
|
||||
* @goal test
|
||||
* @deprecated As of 1.0, use the "quoted" goal instead.
|
||||
* @since 2.1
|
||||
*/
|
||||
@Mojo( name= "test" )
|
||||
public class MyMojo
|
||||
extends AbstractMojo
|
||||
{
|
||||
|
|
@ -18,31 +39,26 @@ public class MyMojo
|
|||
* This parameter uses "quotation" marks and backslashes '\\' in its description. Those characters <em>must</em> be
|
||||
* escaped in Java string literals.
|
||||
*
|
||||
* @parameter default-value="escape\\backslash"
|
||||
* @since 2.0
|
||||
*/
|
||||
@Parameter( defaultValue = "escape\\backslash" )
|
||||
private String defaultParam;
|
||||
|
||||
/**
|
||||
* This parameter is deprecated.
|
||||
*
|
||||
* @parameter
|
||||
* @deprecated As of version 1.0, us the {@link #defaultParam} instead.
|
||||
* @deprecated As of version 1.0, use the {@link #defaultParam} instead.
|
||||
*/
|
||||
@Parameter
|
||||
private String deprecatedParam;
|
||||
|
||||
/**
|
||||
* @parameter expression="${test.undocumented}"
|
||||
* @required
|
||||
*/
|
||||
@Parameter( property = "test.undocumented", required = true )
|
||||
private String undocumentedParam;
|
||||
|
||||
/**
|
||||
* Readonly parameter: should not be proposed for configuration.
|
||||
*
|
||||
* @parameter default-value="not for configuration"
|
||||
* @readonly
|
||||
*/
|
||||
@Parameter( defaultValue = "not for configuration", readonly = true )
|
||||
private String readonly;
|
||||
|
||||
public void execute()
|
||||
|
|
|
|||
|
|
@ -1,2 +1,19 @@
|
|||
# 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.
|
||||
|
||||
detail = true
|
||||
goal = test
|
||||
|
|
|
|||
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
expected = new File( basedir, "expected-help.txt" ).text.trim().replace( "\r", "" );
|
||||
|
||||
log = new File( basedir, "help.log" ).text.replace( "\r", "" );
|
||||
log = log.substring( log.indexOf( "[INFO] help 1.0-SNAPSHOT" ) );
|
||||
log = log.substring( 0, log.indexOf( "[INFO]", 5 ) ).trim();
|
||||
|
||||
assert log == expected;
|
||||
|
||||
return true;
|
||||
|
|
@ -1 +1,18 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals = clean compile
|
||||
|
|
|
|||
|
|
@ -1,5 +1,24 @@
|
|||
package test;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -1,3 +1,22 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import java.io.*;
|
||||
|
||||
File helpMojo = new File( basedir, "target/classes/test/help/HelpMojo.class" );
|
||||
|
|
|
|||
|
|
@ -1,5 +1,24 @@
|
|||
package test;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
public class ClassA
|
||||
{
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,24 @@
|
|||
package test;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
public class ClassB
|
||||
{
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
invoker.profiles.1 = setup
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,24 @@
|
|||
package test;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
/**
|
||||
* This is the source class to be scanned for annotations. While scanning, QDox must not try to resolve references to
|
||||
* other types like the super class from the plugin class realm. The plugin class realm has no relation at all to
|
||||
|
|
|
|||
|
|
@ -0,0 +1,21 @@
|
|||
# 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.
|
||||
|
||||
invoker.java.version = 1.8+
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
invoker.goals.2 = org.apache.maven.its.basic-java-annotations:maven-it-basic-java-annotations:1.0-SNAPSHOT:it0014
|
||||
invoker.goals.3 = org.apache.maven.its.basic-java-annotations:maven-it-basic-java-annotations:1.0-SNAPSHOT:help
|
||||
|
|
@ -0,0 +1,108 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.apache.maven.its.basic-java-annotations</groupId>
|
||||
<artifactId>maven-it-basic-java-annotations</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>maven-plugin</packaging>
|
||||
|
||||
<name>Maven Integration Test :: basic-java-annotations-jdk8</name>
|
||||
<description>
|
||||
Test plugin-plugin, which tests maven-plugin-tools-api and
|
||||
maven-plugin-tools-java. This will generate a plugin descriptor from
|
||||
java-based mojo sources, install the plugin, and then use it.
|
||||
</description>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<!-- pom properties values not taken into account since invoker defines properties -->
|
||||
<!-- that override what's defined in pom -->
|
||||
<maven.compiler.source>1.8</maven.compiler.source>
|
||||
<maven.compiler.target>1.8</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-plugin-api</artifactId>
|
||||
<version>2.2.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-core</artifactId>
|
||||
<version>2.2.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus</groupId>
|
||||
<artifactId>plexus-utils</artifactId>
|
||||
<version>3.0.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
<version>@project.version@</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.1</version>
|
||||
<configuration>
|
||||
<source>1.8</source><!-- avoid ${maven.compiler.source} since value is not as expected -->
|
||||
<target>1.8</target><!-- avoid ${maven.compiler.target} since value is not as expected -->
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>@project.version@</version>
|
||||
<configuration>
|
||||
<skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>mojo-descriptor</id>
|
||||
<goals>
|
||||
<goal>descriptor</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>help-goal</id>
|
||||
<goals>
|
||||
<goal>helpmojo</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
|
|
@ -0,0 +1,66 @@
|
|||
package org.apache.maven.plugin.coreit;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugin.MojoExecutionException;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
* Touches a test file.
|
||||
*
|
||||
*/
|
||||
@Mojo( name = "it0014" )
|
||||
public class CoreIt0014Mojo
|
||||
extends AbstractMojo
|
||||
{
|
||||
|
||||
@Parameter( property = "project.build.directory", required = true )
|
||||
private String outputDirectory;
|
||||
|
||||
public void execute()
|
||||
throws MojoExecutionException
|
||||
{
|
||||
getLog().info( "outputDirectory = " + outputDirectory );
|
||||
|
||||
File f = new File( outputDirectory );
|
||||
|
||||
if ( !f.exists() )
|
||||
{
|
||||
f.mkdirs();
|
||||
}
|
||||
|
||||
File touch = new File( f, "touch.txt" );
|
||||
|
||||
try
|
||||
{
|
||||
touch.createNewFile();
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
throw new MojoExecutionException( "Error writing verification file.", e );
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,91 @@
|
|||
package org.apache.maven.plugin.coreit;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.execution.MavenSession;
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugin.MojoExecution;
|
||||
import org.apache.maven.plugin.MojoExecutionException;
|
||||
import org.apache.maven.plugin.descriptor.PluginDescriptor;
|
||||
import org.apache.maven.plugins.annotations.Component;
|
||||
import org.apache.maven.plugins.annotations.ResolutionScope;
|
||||
import org.apache.maven.plugins.annotations.Execute;
|
||||
import org.apache.maven.plugins.annotations.LifecyclePhase;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
import org.apache.maven.project.MavenProject;
|
||||
import org.apache.maven.project.MavenProjectHelper;
|
||||
import org.apache.maven.settings.Settings;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
/**
|
||||
* Touches a test file.
|
||||
*
|
||||
* @since 1.2
|
||||
* @deprecated Don't use!
|
||||
*/
|
||||
@Mojo( name = "first", requiresDependencyResolution = ResolutionScope.TEST, defaultPhase = LifecyclePhase.INTEGRATION_TEST )
|
||||
@Execute( phase = LifecyclePhase.GENERATE_SOURCES, lifecycle = "cobertura" )
|
||||
public class FirstMojo
|
||||
extends AbstractMojo
|
||||
{
|
||||
|
||||
/**
|
||||
* Project directory.
|
||||
*/
|
||||
@Parameter( defaultValue = "${basedir}", readonly = true )
|
||||
private File basedir;
|
||||
|
||||
@Parameter( property = "first.touchFile", defaultValue = "${project.build.directory}/touch.txt",
|
||||
required = true )
|
||||
private File touchFile;
|
||||
|
||||
/**
|
||||
* @since 0.1
|
||||
* @deprecated As of 0.2
|
||||
*/
|
||||
@Parameter( name = "namedParam", alias = "alias" )
|
||||
private String aliasedParam;
|
||||
|
||||
@Component( role = MavenProjectHelper.class, hint = "test" )
|
||||
private Object projectHelper;
|
||||
|
||||
@Component
|
||||
private MavenSession session;
|
||||
|
||||
@Component
|
||||
private MavenProject project;
|
||||
|
||||
@Component
|
||||
private MojoExecution mojo;
|
||||
|
||||
@Component
|
||||
private PluginDescriptor plugin;
|
||||
|
||||
@Component
|
||||
private Settings settings;
|
||||
|
||||
public void execute()
|
||||
throws MojoExecutionException
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.apache.maven.plugin.plugin;
|
||||
package org.apache.maven.plugin.coreit;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
|
|
@ -19,39 +19,29 @@ package org.apache.maven.plugin.plugin;
|
|||
* under the License.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugin.MojoExecutionException;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
import org.apache.maven.tools.plugin.generator.Generator;
|
||||
import org.apache.maven.tools.plugin.generator.PluginXdocGenerator;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
* Generate Xdoc files for the project mojos or goals.
|
||||
*
|
||||
* @author <a href="mailto:brett@apache.org">Brett Porter</a>
|
||||
* @version $Id$
|
||||
* @since 2.0
|
||||
* Could not use regex in @Parameter(defaultValue)
|
||||
*/
|
||||
@Mojo( name = "xdoc", threadSafe = true )
|
||||
public class XdocGeneratorMojo
|
||||
extends AbstractGeneratorMojo
|
||||
@Mojo( name = "mplugin-220" )
|
||||
public class MPlugin220Mojo
|
||||
extends AbstractMojo
|
||||
{
|
||||
/**
|
||||
* The directory where the generated Xdoc files will be put.
|
||||
*/
|
||||
@Parameter( defaultValue = "${project.build.directory}/generated-site/xdoc" )
|
||||
protected File outputDirectory;
|
||||
|
||||
@Parameter( defaultValue = "[a-zA-Z]{2,}-\\\\d+" )
|
||||
private String regex;
|
||||
|
||||
/** {@inheritDoc} */
|
||||
protected File getOutputDirectory()
|
||||
public void execute()
|
||||
throws MojoExecutionException
|
||||
{
|
||||
return outputDirectory;
|
||||
getLog().info( "regex = " + regex );
|
||||
}
|
||||
|
||||
/** {@inheritDoc} */
|
||||
protected Generator createGenerator()
|
||||
{
|
||||
return new PluginXdocGenerator( project );
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,76 @@
|
|||
package org.apache.maven.plugin.coreit;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugins.annotations.Component;
|
||||
import org.apache.maven.plugins.annotations.ResolutionScope;
|
||||
import org.apache.maven.plugins.annotations.Execute;
|
||||
import org.apache.maven.plugins.annotations.InstantiationStrategy;
|
||||
import org.apache.maven.plugins.annotations.LifecyclePhase;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
import org.apache.maven.project.MavenProjectHelper;
|
||||
|
||||
/**
|
||||
* Checks maximum annotations with non-default values.
|
||||
*
|
||||
* @since since-text
|
||||
* @deprecated deprecated-text
|
||||
*/
|
||||
@Mojo( name = "maximal",
|
||||
aggregator = true,
|
||||
configurator = "configurator-hint",
|
||||
requiresDependencyResolution = ResolutionScope.COMPILE,
|
||||
requiresDependencyCollection = ResolutionScope.TEST,
|
||||
defaultPhase = LifecyclePhase.PACKAGE,
|
||||
executionStrategy = "always",
|
||||
instantiationStrategy = InstantiationStrategy.SINGLETON,
|
||||
inheritByDefault = false,
|
||||
requiresDirectInvocation = true,
|
||||
requiresOnline = true,
|
||||
requiresProject = false,
|
||||
requiresReports = true,
|
||||
threadSafe = true )
|
||||
@Execute( phase = LifecyclePhase.COMPILE )
|
||||
public class Maximal
|
||||
extends AbstractMojo
|
||||
{
|
||||
/**
|
||||
* Parameter description.
|
||||
*
|
||||
* @since since-text
|
||||
* @deprecated deprecated-text
|
||||
*/
|
||||
@Parameter( alias = "myAlias",
|
||||
property = "aProperty",
|
||||
defaultValue = "${anExpression}",
|
||||
readonly = true,
|
||||
required = true )
|
||||
private String param;
|
||||
|
||||
@Component( role = MavenProjectHelper.class, hint = "test" )
|
||||
private Object projectHelper;
|
||||
|
||||
public void execute()
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
package org.apache.maven.plugin.coreit;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugins.annotations.Component;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
import org.apache.maven.project.MavenProjectHelper;
|
||||
|
||||
// minimum annotations => default values
|
||||
@Mojo( name = "minimal" )
|
||||
public class Minimal
|
||||
extends AbstractMojo
|
||||
{
|
||||
@Parameter
|
||||
private String param;
|
||||
|
||||
@Component
|
||||
private MavenProjectHelper projectHelper;
|
||||
|
||||
public void execute()
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
package fr.ca;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
public interface TestInterface {
|
||||
|
||||
/**
|
||||
* Java 8 required to support such default method implementation
|
||||
*/
|
||||
public default void foo(){
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,231 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File touchFile = new File( basedir, "target/touch.txt" )
|
||||
assert touchFile.isFile()
|
||||
|
||||
File descriptorFile = new File( basedir, "target/classes/META-INF/maven/plugin.xml" );
|
||||
assert descriptorFile.isFile()
|
||||
|
||||
def pluginDescriptor = new XmlParser().parse( descriptorFile );
|
||||
|
||||
def mojo = pluginDescriptor.mojos.mojo.findAll{ it.goal.text() == "first" }[0]
|
||||
|
||||
assert mojo.goal.text() == 'first'
|
||||
assert mojo.implementation.text() == 'org.apache.maven.plugin.coreit.FirstMojo'
|
||||
assert mojo.language.text() == 'java'
|
||||
assert mojo.description.text() == 'Touches a test file.'
|
||||
assert mojo.deprecated.text() == "Don't use!"
|
||||
assert mojo.requiresDependencyResolution.text() == 'test'
|
||||
assert mojo.requiresDependencyCollection.text() == ''
|
||||
assert mojo.requiresProject.text() == 'true'
|
||||
assert mojo.requiresOnline.text() == 'false'
|
||||
assert mojo.requiresDirectInvocation.text() == 'false'
|
||||
assert mojo.aggregator.text() == 'false'
|
||||
assert mojo.threadSafe.text() == 'false'
|
||||
assert mojo.phase.text() == 'integration-test'
|
||||
assert mojo.executePhase.text() == 'generate-sources'
|
||||
assert mojo.executeLifecycle.text() == 'cobertura'
|
||||
|
||||
assert mojo.configuration.basedir[0].text() == ''
|
||||
assert mojo.configuration.basedir[0].'@implementation' == 'java.io.File'
|
||||
assert mojo.configuration.basedir[0].'@default-value' == '${basedir}'
|
||||
|
||||
assert mojo.configuration.touchFile[0].text() == '${first.touchFile}'
|
||||
assert mojo.configuration.touchFile[0].'@implementation' == 'java.io.File'
|
||||
assert mojo.configuration.touchFile[0].'@default-value' == '${project.build.directory}/touch.txt'
|
||||
|
||||
assert mojo.configuration.session[0].text() == ''
|
||||
assert mojo.configuration.session[0].'@implementation' == 'org.apache.maven.execution.MavenSession'
|
||||
assert mojo.configuration.session[0].'@default-value' == '${session}'
|
||||
|
||||
assert mojo.configuration.project[0].text() == ''
|
||||
assert mojo.configuration.project[0].'@implementation' == 'org.apache.maven.project.MavenProject'
|
||||
assert mojo.configuration.project[0].'@default-value' == '${project}'
|
||||
|
||||
assert mojo.configuration.mojo[0].text() == ''
|
||||
assert mojo.configuration.mojo[0].'@implementation' == 'org.apache.maven.plugin.MojoExecution'
|
||||
assert mojo.configuration.mojo[0].'@default-value' == '${mojoExecution}'
|
||||
|
||||
assert mojo.configuration.plugin[0].text() == ''
|
||||
assert mojo.configuration.plugin[0].'@implementation' == 'org.apache.maven.plugin.descriptor.PluginDescriptor'
|
||||
assert mojo.configuration.plugin[0].'@default-value' == '${plugin}'
|
||||
|
||||
assert mojo.configuration.settings[0].text() == ''
|
||||
assert mojo.configuration.settings[0].'@implementation' == 'org.apache.maven.settings.Settings'
|
||||
assert mojo.configuration.settings[0].'@default-value' == '${settings}'
|
||||
|
||||
assert mojo.requirements.requirement.size() == 1
|
||||
|
||||
assert mojo.requirements.requirement[0].role.text() == 'org.apache.maven.project.MavenProjectHelper'
|
||||
assert mojo.requirements.requirement[0].'role-hint'.text() == 'test'
|
||||
assert mojo.requirements.requirement[0].'field-name'.text() == 'projectHelper'
|
||||
|
||||
assert mojo.parameters.parameter.size() == 8
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "namedParam" }[0]
|
||||
assert parameter.name.text() == 'namedParam'
|
||||
assert parameter.alias.text() == 'alias'
|
||||
assert parameter.type.text() == 'java.lang.String'
|
||||
assert parameter.deprecated.text() == 'As of 0.2'
|
||||
assert parameter.required.text() == 'false'
|
||||
assert parameter.editable.text() == 'true'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "basedir" }[0]
|
||||
assert parameter.name.text() == 'basedir'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'java.io.File'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'false'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == 'Project directory.'
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "mojo" }[0]
|
||||
assert parameter.name.text() == 'mojo'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'org.apache.maven.plugin.MojoExecution'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "plugin" }[0]
|
||||
assert parameter.name.text() == 'plugin'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'org.apache.maven.plugin.descriptor.PluginDescriptor'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "project" }[0]
|
||||
assert parameter.name.text() == 'project'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'org.apache.maven.project.MavenProject'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "session" }[0]
|
||||
assert parameter.name.text() == 'session'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'org.apache.maven.execution.MavenSession'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "settings" }[0]
|
||||
assert parameter.name.text() == 'settings'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'org.apache.maven.settings.Settings'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "touchFile" }[0]
|
||||
assert parameter.name.text() == 'touchFile'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'java.io.File'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'true'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
// check default values
|
||||
mojo = pluginDescriptor.mojos.mojo.findAll{ it.goal.text() == "minimal"}[0]
|
||||
|
||||
assert mojo.goal.text() == 'minimal'
|
||||
assert mojo.implementation.text() == 'org.apache.maven.plugin.coreit.Minimal'
|
||||
assert mojo.language.text() == 'java'
|
||||
assert mojo.description.text() == ''
|
||||
assert mojo.deprecated.text() == ''
|
||||
assert mojo.requiresDependencyResolution.text() == ''
|
||||
assert mojo.requiresDependencyCollection.text() == ''
|
||||
assert mojo.requiresProject.text() == 'true'
|
||||
assert mojo.requiresOnline.text() == 'false'
|
||||
assert mojo.requiresDirectInvocation.text() == 'false'
|
||||
assert mojo.requiresReports.text() == 'false'
|
||||
assert mojo.aggregator.text() == 'false'
|
||||
assert mojo.threadSafe.text() == 'false'
|
||||
assert mojo.phase.text() == ''
|
||||
assert mojo.executePhase.text() == ''
|
||||
assert mojo.executeLifecycle.text() == ''
|
||||
assert mojo.executionStrategy.text() == 'once-per-session'
|
||||
assert mojo.inheritedByDefault.text() == 'true'
|
||||
assert mojo.instantiationStrategy.text() == 'per-lookup'
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "param" }[0]
|
||||
assert parameter.name.text() == 'param'
|
||||
assert parameter.alias.text() == ''
|
||||
assert parameter.type.text() == 'java.lang.String'
|
||||
assert parameter.deprecated.text() == ''
|
||||
assert parameter.required.text() == 'false'
|
||||
assert parameter.editable.text() == 'true'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
def requirement = mojo.requirements.requirement.findAll{ it.'field-name'.text() == "projectHelper" }[0]
|
||||
assert requirement.role.text() == 'org.apache.maven.project.MavenProjectHelper'
|
||||
|
||||
// check values set by every annotation
|
||||
mojo = pluginDescriptor.mojos.mojo.findAll{ it.goal.text() == "maximal"}[0]
|
||||
|
||||
assert mojo.goal.text() == 'maximal'
|
||||
assert mojo.implementation.text() == 'org.apache.maven.plugin.coreit.Maximal'
|
||||
assert mojo.language.text() == 'java'
|
||||
assert mojo.description.text() == 'Checks maximum annotations with non-default values.'
|
||||
assert mojo.deprecated.text() == 'deprecated-text'
|
||||
assert mojo.requiresDependencyResolution.text() == 'compile'
|
||||
assert mojo.requiresDependencyCollection.text() == 'test'
|
||||
assert mojo.requiresProject.text() == 'false'
|
||||
assert mojo.requiresOnline.text() == 'true'
|
||||
assert mojo.requiresDirectInvocation.text() == 'true'
|
||||
assert mojo.requiresReports.text() == 'true'
|
||||
assert mojo.aggregator.text() == 'true'
|
||||
assert mojo.configurator.text() == 'configurator-hint'
|
||||
assert mojo.threadSafe.text() == 'true'
|
||||
assert mojo.phase.text() == 'package'
|
||||
assert mojo.executePhase.text() == 'compile'
|
||||
assert mojo.executeLifecycle.text() == ''
|
||||
assert mojo.executionStrategy.text() == 'always'
|
||||
assert mojo.inheritedByDefault.text() == 'false'
|
||||
assert mojo.instantiationStrategy.text() == 'singleton'
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "param" }[0]
|
||||
assert parameter.name.text() == 'param'
|
||||
assert parameter.alias.text() == 'myAlias'
|
||||
assert parameter.type.text() == 'java.lang.String'
|
||||
assert parameter.since.text() == 'since-text'
|
||||
assert parameter.deprecated.text() == 'deprecated-text'
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == 'Parameter description.'
|
||||
|
||||
requirement = mojo.requirements.requirement.findAll{ it.'field-name'.text() == "projectHelper" }[0]
|
||||
assert requirement.role.text() == 'org.apache.maven.project.MavenProjectHelper'
|
||||
|
||||
// check help mojo source and class
|
||||
assert new File( basedir, "target/classes/org/apache/maven/plugin/coreit/HelpMojo.class" ).isFile()
|
||||
assert new File( basedir, "target/generated-sources/plugin/org/apache/maven/plugin/coreit/HelpMojo.java" ).isFile()
|
||||
assert !new File( basedir, "target/generated-sources/plugin/HelpMojo.java" ).isFile()
|
||||
|
||||
return true;
|
||||
|
|
@ -1,3 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
invoker.goals.2 = org.apache.maven.its.basic-java-annotations:maven-it-basic-java-annotations:1.0-SNAPSHOT:it0014
|
||||
invoker.goals.3 = org.apache.maven.its.basic-java-annotations:maven-it-basic-java-annotations:1.0-SNAPSHOT:help
|
||||
|
|
@ -62,7 +62,7 @@ public class FirstMojo
|
|||
* @since 0.1
|
||||
* @deprecated As of 0.2
|
||||
*/
|
||||
@Parameter( alias = "alias" )
|
||||
@Parameter( name = "namedParam", alias = "alias" )
|
||||
private String aliasedParam;
|
||||
|
||||
@Component( role = MavenProjectHelper.class, hint = "test" )
|
||||
|
|
|
|||
|
|
@ -1,47 +1,47 @@
|
|||
package org.apache.maven.plugin.coreit;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugin.MojoExecutionException;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
* Could not use regex in @Parameter(defaultValue)
|
||||
*/
|
||||
@Mojo( name = "mplugin-220" )
|
||||
public class MPlugin220Mojo
|
||||
extends AbstractMojo
|
||||
{
|
||||
|
||||
@Parameter( defaultValue = "[a-zA-Z]{2,}-\\\\d+" )
|
||||
private String regex;
|
||||
|
||||
public void execute()
|
||||
throws MojoExecutionException
|
||||
{
|
||||
getLog().info( "regex = " + regex );
|
||||
}
|
||||
|
||||
}
|
||||
package org.apache.maven.plugin.coreit;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugin.MojoExecutionException;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
* Could not use regex in @Parameter(defaultValue)
|
||||
*/
|
||||
@Mojo( name = "mplugin-220" )
|
||||
public class MPlugin220Mojo
|
||||
extends AbstractMojo
|
||||
{
|
||||
|
||||
@Parameter( defaultValue = "[a-zA-Z]{2,}-\\\\d+" )
|
||||
private String regex;
|
||||
|
||||
public void execute()
|
||||
throws MojoExecutionException
|
||||
{
|
||||
getLog().info( "regex = " + regex );
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,3 +1,22 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File touchFile = new File( basedir, "target/touch.txt" )
|
||||
assert touchFile.isFile()
|
||||
|
||||
|
|
@ -60,8 +79,8 @@ assert mojo.requirements.requirement[0].'field-name'.text() == 'projectHelper'
|
|||
|
||||
assert mojo.parameters.parameter.size() == 8
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "aliasedParam" }[0]
|
||||
assert parameter.name.text() == 'aliasedParam'
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "namedParam" }[0]
|
||||
assert parameter.name.text() == 'namedParam'
|
||||
assert parameter.alias.text() == 'alias'
|
||||
assert parameter.type.text() == 'java.lang.String'
|
||||
assert parameter.deprecated.text() == 'As of 0.2'
|
||||
|
|
|
|||
|
|
@ -1,3 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
invoker.goals.2 = org.apache.maven.its.it0013:maven-it-it0013:1.0-SNAPSHOT:it0013
|
||||
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ public class FirstMojo
|
|||
private File touchFile;
|
||||
|
||||
/**
|
||||
* @parameter alias="alias"
|
||||
* @parameter name="namedParam" alias="alias"
|
||||
* @deprecated As of 0.2
|
||||
* @since 0.1
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,3 +1,22 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File touchFile = new File( basedir, "target/touch.txt" )
|
||||
assert touchFile.isFile()
|
||||
|
||||
|
|
@ -32,36 +51,37 @@ assert mojo.configuration.touchFile[0].text() == '${first.touchFile}'
|
|||
assert mojo.configuration.touchFile[0].'@implementation' == 'java.io.File'
|
||||
assert mojo.configuration.touchFile[0].'@default-value' == '${project.build.directory}/touch.txt'
|
||||
|
||||
assert mojo.configuration.session[0].text() == ''
|
||||
assert mojo.configuration.session[0].'@implementation' == 'org.apache.maven.execution.MavenSession'
|
||||
assert mojo.configuration.session[0].'@default-value' == '${session}'
|
||||
assert mojo.requirements.requirement.size() == 6
|
||||
|
||||
assert mojo.configuration.project[0].text() == ''
|
||||
assert mojo.configuration.project[0].'@implementation' == 'org.apache.maven.project.MavenProject'
|
||||
assert mojo.configuration.project[0].'@default-value' == '${project}'
|
||||
requirement = mojo.requirements.requirement.findAll{ it.'field-name'.text() == "session" }[0]
|
||||
assert requirement.role.text() == 'org.apache.maven.execution.MavenSession'
|
||||
assert requirement.'field-name'.text() == 'session'
|
||||
|
||||
assert mojo.configuration.mojo[0].text() == ''
|
||||
assert mojo.configuration.mojo[0].'@implementation' == 'org.apache.maven.plugin.MojoExecution'
|
||||
assert mojo.configuration.mojo[0].'@default-value' == '${mojoExecution}'
|
||||
requirement = mojo.requirements.requirement.findAll{ it.'field-name'.text() == "project" }[0]
|
||||
assert requirement.role.text() == 'org.apache.maven.project.MavenProject'
|
||||
assert requirement.'field-name'.text() == 'project'
|
||||
|
||||
assert mojo.configuration.plugin[0].text() == ''
|
||||
assert mojo.configuration.plugin[0].'@implementation' == 'org.apache.maven.plugin.descriptor.PluginDescriptor'
|
||||
assert mojo.configuration.plugin[0].'@default-value' == '${plugin}'
|
||||
requirement = mojo.requirements.requirement.findAll{ it.'field-name'.text() == "mojo" }[0]
|
||||
assert requirement.role.text() == 'org.apache.maven.plugin.MojoExecution'
|
||||
assert requirement.'field-name'.text() == 'mojo'
|
||||
|
||||
assert mojo.configuration.settings[0].text() == ''
|
||||
assert mojo.configuration.settings[0].'@implementation' == 'org.apache.maven.settings.Settings'
|
||||
assert mojo.configuration.settings[0].'@default-value' == '${settings}'
|
||||
requirement = mojo.requirements.requirement.findAll{ it.'field-name'.text() == "plugin" }[0]
|
||||
assert requirement.role.text() == 'org.apache.maven.plugin.descriptor.PluginDescriptor'
|
||||
assert requirement.'field-name'.text() == 'plugin'
|
||||
|
||||
assert mojo.requirements.requirement.size() == 1
|
||||
requirement = mojo.requirements.requirement.findAll{ it.'field-name'.text() == "settings" }[0]
|
||||
assert requirement.role.text() == 'org.apache.maven.settings.Settings'
|
||||
assert requirement.'field-name'.text() == 'settings'
|
||||
|
||||
assert mojo.requirements.requirement[0].role.text() == 'org.apache.maven.project.MavenProjectHelper'
|
||||
assert mojo.requirements.requirement[0].'role-hint'.text() == 'test'
|
||||
assert mojo.requirements.requirement[0].'field-name'.text() == 'projectHelper'
|
||||
requirement = mojo.requirements.requirement.findAll{ it.'field-name'.text() == "projectHelper" }[0]
|
||||
assert requirement.role.text() == 'org.apache.maven.project.MavenProjectHelper'
|
||||
assert requirement.'role-hint'.text() == 'test'
|
||||
assert requirement.'field-name'.text() == 'projectHelper'
|
||||
|
||||
assert mojo.parameters.parameter.size() == 8
|
||||
assert mojo.parameters.parameter.size() == 3
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "aliasedParam" }[0]
|
||||
assert parameter.name.text() == 'aliasedParam'
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "namedParam" }[0]
|
||||
assert parameter.name.text() == 'namedParam'
|
||||
assert parameter.alias.text() == 'alias'
|
||||
assert parameter.type.text() == 'java.lang.String'
|
||||
assert parameter.deprecated.text() == 'As of 0.2'
|
||||
|
|
@ -78,51 +98,6 @@ assert parameter.required.text() == 'false'
|
|||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == 'Project directory.'
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "mojo" }[0]
|
||||
assert parameter.name.text() == 'mojo'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'org.apache.maven.plugin.MojoExecution'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "plugin" }[0]
|
||||
assert parameter.name.text() == 'plugin'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'org.apache.maven.plugin.descriptor.PluginDescriptor'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "project" }[0]
|
||||
assert parameter.name.text() == 'project'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'org.apache.maven.project.MavenProject'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "session" }[0]
|
||||
assert parameter.name.text() == 'session'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'org.apache.maven.execution.MavenSession'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "settings" }[0]
|
||||
assert parameter.name.text() == 'settings'
|
||||
assert parameter.alias.isEmpty()
|
||||
assert parameter.type.text() == 'org.apache.maven.settings.Settings'
|
||||
assert parameter.deprecated.isEmpty()
|
||||
assert parameter.required.text() == 'true'
|
||||
assert parameter.editable.text() == 'false'
|
||||
assert parameter.description.text() == ''
|
||||
|
||||
parameter = mojo.parameters.parameter.findAll{ it.name.text() == "touchFile" }[0]
|
||||
assert parameter.name.text() == 'touchFile'
|
||||
assert parameter.alias.isEmpty()
|
||||
|
|
|
|||
|
|
@ -1 +1,18 @@
|
|||
invoker.goals = clean plugin:report -DskipTests
|
||||
# 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.
|
||||
|
||||
invoker.goals = clean plugin:report -DskipTests
|
||||
|
|
|
|||
|
|
@ -1,45 +1,45 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.apache.maven.plugins.plugin.its</groupId>
|
||||
<artifactId>mplugin-187</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
|
||||
<description>Verify that plugin:report succeeds</description>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>@project.version@</version>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.apache.maven.plugins.plugin.its</groupId>
|
||||
<artifactId>mplugin-187</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
|
||||
<description>Verify that plugin:report succeeds</description>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>@project.version@</version>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
</project>
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals = clean compile plugin:report
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.apache.maven.plugins.plugin.its</groupId>
|
||||
<artifactId>mplugin-191</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>maven-plugin</packaging>
|
||||
|
||||
<description>Verify that plugin-info.html and mojo pages are generated in the correct folder</description>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.1</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>@project.version@</version>
|
||||
<configuration>
|
||||
<skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
<version>@project.version@</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-plugin-api</artifactId>
|
||||
<version>2.2.1</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
|
|
@ -0,0 +1,81 @@
|
|||
package org.apache.maven.plugins.plugin.it;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugin.MojoExecutionException;
|
||||
import org.apache.maven.plugins.annotations.LifecyclePhase;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
* Goal which touches a timestamp file.
|
||||
*/
|
||||
@Mojo(name = "touch", defaultPhase = LifecyclePhase.PROCESS_RESOURCES)
|
||||
public class MyMojo
|
||||
extends AbstractMojo
|
||||
{
|
||||
/**
|
||||
* Location of the file.
|
||||
*/
|
||||
@Parameter(defaultValue = "${project.build.directory}", required = true)
|
||||
private File outputDirectory;
|
||||
|
||||
public void execute()
|
||||
throws MojoExecutionException
|
||||
{
|
||||
File f = outputDirectory;
|
||||
|
||||
if ( !f.exists() )
|
||||
{
|
||||
f.mkdirs();
|
||||
}
|
||||
|
||||
File touch = new File( f, "touch.txt" );
|
||||
|
||||
FileWriter w = null;
|
||||
try
|
||||
{
|
||||
w = new FileWriter( touch );
|
||||
|
||||
w.write( "touch.txt" );
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
throw new MojoExecutionException( "Error creating file " + touch, e );
|
||||
}
|
||||
finally
|
||||
{
|
||||
if ( w != null )
|
||||
{
|
||||
try
|
||||
{
|
||||
w.close();
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
// ignore
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -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.
|
||||
*/
|
||||
|
||||
File pluginInfo = new File( basedir, "target/site/plugin-info.html" );
|
||||
assert pluginInfo.isFile()
|
||||
|
||||
File touchMojo = new File( basedir, "target/generated-site/xdoc/touch-mojo.xml" );
|
||||
assert touchMojo.isFile()
|
||||
|
||||
return true;
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
# 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.
|
||||
|
||||
invoker.java.version = 1.8+
|
||||
invoker.goals.1 = clean verify
|
||||
|
|
@ -0,0 +1,83 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
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 xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>test-plugin</groupId>
|
||||
<artifactId>test-plugin</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>maven-plugin</packaging>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-plugin-api</artifactId>
|
||||
<version>3.2.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
<version>@project.version@</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.1</version>
|
||||
<configuration>
|
||||
<source>1.8</source>
|
||||
<target>1.8</target>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>@project.version@</version>
|
||||
<configuration>
|
||||
<goalPrefix>FOO</goalPrefix>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>default-descriptor</id>
|
||||
<goals>
|
||||
<goal>descriptor</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
</configuration>
|
||||
<phase>process-classes</phase>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>help-descriptor</id>
|
||||
<goals>
|
||||
<goal>helpmojo</goal>
|
||||
</goals>
|
||||
<phase>process-classes</phase>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
package fr.ca;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugin.MojoExecutionException;
|
||||
import org.apache.maven.plugin.MojoFailureException;
|
||||
import org.apache.maven.plugins.annotations.LifecyclePhase;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
|
||||
/**
|
||||
* Created by clement.agarini on 04/08/14.
|
||||
*/
|
||||
@Mojo(name="test-plugin",defaultPhase = LifecyclePhase.GENERATE_SOURCES)
|
||||
public class MyMojo extends AbstractMojo {
|
||||
@Override
|
||||
public void execute() throws MojoExecutionException, MojoFailureException {
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
package fr.ca;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
public interface TestInterface {
|
||||
|
||||
/**
|
||||
* Java 8 required to support such default method implementation
|
||||
*/
|
||||
public default void foo(){
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
# 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.
|
||||
|
||||
invoker.maven.version = 3.0+
|
||||
invoker.goals.1 = clean install -DskipTests
|
||||
invoker.goals.2 = --log-file help.log org.apache.maven.its.plugin:help:1.0-SNAPSHOT:help
|
||||
|
|
@ -0,0 +1,87 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.apache.maven.its.plugin</groupId>
|
||||
<artifactId>help</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>maven-plugin</packaging>
|
||||
|
||||
<description>
|
||||
Tests generation and compilation of the help mojo.
|
||||
</description>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-plugin-api</artifactId>
|
||||
<version>2.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus</groupId>
|
||||
<artifactId>plexus-utils</artifactId>
|
||||
<version>3.0.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
<version>@project.version@</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>2.4</version>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>@project.version@</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>default-descriptor</id>
|
||||
<phase>process-classes</phase>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>help-goal</id>
|
||||
<goals>
|
||||
<goal>helpmojo</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
package test;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
|
||||
@Mojo( name= "test" )
|
||||
public class MyMojo
|
||||
extends AbstractMojo
|
||||
{
|
||||
@Parameter
|
||||
private String empyAnnotatedParameter;
|
||||
|
||||
public void execute()
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
# 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.
|
||||
|
||||
detail = true
|
||||
goal = test
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean process-classes
|
||||
|
|
@ -0,0 +1,82 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.apache.maven.plugins.plugin.its</groupId>
|
||||
<artifactId>mplugin305</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>maven-plugin</packaging>
|
||||
|
||||
<url>https://issues.apache.org/jira/browse/MPLUGIN-305</url>
|
||||
|
||||
<properties>
|
||||
<mavenPluginPluginVersion>@project.version@</mavenPluginPluginVersion>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-plugin-api</artifactId>
|
||||
<version>2.2.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
<version>${mavenPluginPluginVersion}</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.surefire</groupId>
|
||||
<artifactId>maven-surefire-common</artifactId>
|
||||
<version>2.19.1</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>2.4</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>${mavenPluginPluginVersion}</version>
|
||||
<configuration>
|
||||
<extractors>
|
||||
<extractor>java-annotations</extractor>
|
||||
</extractors>
|
||||
<skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>mojo-descriptor</id>
|
||||
<goals>
|
||||
<goal>descriptor</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
|
|
@ -0,0 +1,289 @@
|
|||
package org.apache.maven.plugins.plugin.it;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.maven.plugin.surefire.AbstractSurefireMojo;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.surefire.suite.RunResult;
|
||||
|
||||
@Mojo(name="custom-surefire")
|
||||
public class CustomSurefireMojo extends AbstractSurefireMojo {
|
||||
|
||||
public File getBasedir()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public File getClassesDirectory()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public String getDebugForkedProcess()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public Boolean getFailIfNoSpecifiedTests()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public int getForkedProcessTimeoutInSeconds()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public double getParallelTestsTimeoutForcedInSeconds()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public double getParallelTestsTimeoutInSeconds()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public String getReportFormat()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public File getReportsDirectory()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public String getShutdown()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public int getSkipAfterFailureCount()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public String getTest()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public File getTestClassesDirectory()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean isPrintSummary()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isSkip()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isSkipExec()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isSkipTests()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isUseFile()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isUseManifestOnlyJar()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isUseSystemClassLoader()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public void setBasedir( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setClassesDirectory( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setDebugForkedProcess( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setFailIfNoSpecifiedTests( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setForkedProcessTimeoutInSeconds( int arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setParallelTestsTimeoutForcedInSeconds( double arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setParallelTestsTimeoutInSeconds( double arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setPrintSummary( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setReportFormat( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setReportsDirectory( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setSkip( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setSkipExec( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setSkipTests( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setTest( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setTestClassesDirectory( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setUseFile( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setUseManifestOnlyJar( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setUseSystemClassLoader( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String[] getDefaultIncludes()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public File getExcludesFile()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getIncludes()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public File getIncludesFile()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String getPluginName()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int getRerunFailingTestsCount()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRunOrder()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public File[] getSuiteXmlFiles()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void handleSummary( RunResult arg0, Exception arg1 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean hasSuiteXmlFiles()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isSkipExecution()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setIncludes( List<String> arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setRunOrder( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSuiteXmlFiles( File[] arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected List<File> suiteXmlFiles()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File descriptorFile = new File( basedir, "target/classes/META-INF/maven/plugin.xml" );
|
||||
assert descriptorFile.isFile()
|
||||
|
||||
def pluginDescriptor = new XmlParser().parse( descriptorFile );
|
||||
|
||||
assert pluginDescriptor.mojos.mojo.size() == 1
|
||||
assert pluginDescriptor.mojos.mojo.parameters.parameter.size() == 50
|
||||
|
||||
return true;
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean process-classes
|
||||
|
|
@ -0,0 +1,85 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.apache.maven.plugins.plugin.its</groupId>
|
||||
<artifactId>mplugin305</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>maven-plugin</packaging>
|
||||
|
||||
<url>https://issues.apache.org/jira/browse/MPLUGIN-305</url>
|
||||
|
||||
<properties>
|
||||
<mavenPluginPluginVersion>@project.version@</mavenPluginPluginVersion>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-plugin-api</artifactId>
|
||||
<version>2.2.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
<version>${mavenPluginPluginVersion}</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.surefire</groupId>
|
||||
<artifactId>maven-surefire-common</artifactId>
|
||||
<version>2.19.1</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>2.4</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>${mavenPluginPluginVersion}</version>
|
||||
<configuration>
|
||||
<extractors>
|
||||
<extractor>java-annotations</extractor>
|
||||
</extractors>
|
||||
<skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>mojo-descriptor</id>
|
||||
<goals>
|
||||
<goal>descriptor</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<mojoDependencies/>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
|
|
@ -0,0 +1,289 @@
|
|||
package org.apache.maven.plugins.plugin.it;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.maven.plugin.surefire.AbstractSurefireMojo;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.surefire.suite.RunResult;
|
||||
|
||||
@Mojo(name="custom-surefire")
|
||||
public class CustomSurefireMojo extends AbstractSurefireMojo {
|
||||
|
||||
public File getBasedir()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public File getClassesDirectory()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public String getDebugForkedProcess()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public Boolean getFailIfNoSpecifiedTests()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public int getForkedProcessTimeoutInSeconds()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public double getParallelTestsTimeoutForcedInSeconds()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public double getParallelTestsTimeoutInSeconds()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public String getReportFormat()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public File getReportsDirectory()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public String getShutdown()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public int getSkipAfterFailureCount()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public String getTest()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public File getTestClassesDirectory()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean isPrintSummary()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isSkip()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isSkipExec()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isSkipTests()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isUseFile()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isUseManifestOnlyJar()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isUseSystemClassLoader()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public void setBasedir( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setClassesDirectory( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setDebugForkedProcess( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setFailIfNoSpecifiedTests( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setForkedProcessTimeoutInSeconds( int arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setParallelTestsTimeoutForcedInSeconds( double arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setParallelTestsTimeoutInSeconds( double arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setPrintSummary( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setReportFormat( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setReportsDirectory( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setSkip( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setSkipExec( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setSkipTests( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setTest( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setTestClassesDirectory( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setUseFile( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setUseManifestOnlyJar( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setUseSystemClassLoader( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String[] getDefaultIncludes()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public File getExcludesFile()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getIncludes()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public File getIncludesFile()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String getPluginName()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int getRerunFailingTestsCount()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRunOrder()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public File[] getSuiteXmlFiles()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void handleSummary( RunResult arg0, Exception arg1 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean hasSuiteXmlFiles()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isSkipExecution()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setIncludes( List<String> arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setRunOrder( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSuiteXmlFiles( File[] arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected List<File> suiteXmlFiles()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File descriptorFile = new File( basedir, "target/classes/META-INF/maven/plugin.xml" );
|
||||
assert descriptorFile.isFile()
|
||||
|
||||
def pluginDescriptor = new XmlParser().parse( descriptorFile );
|
||||
|
||||
assert pluginDescriptor.mojos.mojo.size() == 1
|
||||
assert pluginDescriptor.mojos.mojo.parameters.parameter.size() == 0
|
||||
|
||||
return true;
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals.1 = clean process-classes
|
||||
|
|
@ -0,0 +1,85 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.apache.maven.plugins.plugin.its</groupId>
|
||||
<artifactId>mplugin305</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>maven-plugin</packaging>
|
||||
|
||||
<url>https://issues.apache.org/jira/browse/MPLUGIN-305</url>
|
||||
|
||||
<properties>
|
||||
<mavenPluginPluginVersion>@project.version@</mavenPluginPluginVersion>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-plugin-api</artifactId>
|
||||
<version>2.2.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
<version>${mavenPluginPluginVersion}</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.surefire</groupId>
|
||||
<artifactId>maven-surefire-common</artifactId>
|
||||
<version>2.19.1</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>2.4</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>${mavenPluginPluginVersion}</version>
|
||||
<configuration>
|
||||
<extractors>
|
||||
<extractor>java-annotations</extractor>
|
||||
</extractors>
|
||||
<skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
|
||||
<mojoDependencies>
|
||||
<mojoDependency>org.apache.maven.surefire:maven-surefire-common</mojoDependency>
|
||||
</mojoDependencies>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>mojo-descriptor</id>
|
||||
<goals>
|
||||
<goal>descriptor</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
|
|
@ -0,0 +1,289 @@
|
|||
package org.apache.maven.plugins.plugin.it;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.maven.plugin.surefire.AbstractSurefireMojo;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.surefire.suite.RunResult;
|
||||
|
||||
@Mojo(name="custom-surefire")
|
||||
public class CustomSurefireMojo extends AbstractSurefireMojo {
|
||||
|
||||
public File getBasedir()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public File getClassesDirectory()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public String getDebugForkedProcess()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public Boolean getFailIfNoSpecifiedTests()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public int getForkedProcessTimeoutInSeconds()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public double getParallelTestsTimeoutForcedInSeconds()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public double getParallelTestsTimeoutInSeconds()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public String getReportFormat()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public File getReportsDirectory()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public String getShutdown()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public int getSkipAfterFailureCount()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public String getTest()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public File getTestClassesDirectory()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean isPrintSummary()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isSkip()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isSkipExec()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isSkipTests()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isUseFile()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isUseManifestOnlyJar()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isUseSystemClassLoader()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public void setBasedir( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setClassesDirectory( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setDebugForkedProcess( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setFailIfNoSpecifiedTests( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setForkedProcessTimeoutInSeconds( int arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setParallelTestsTimeoutForcedInSeconds( double arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setParallelTestsTimeoutInSeconds( double arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setPrintSummary( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setReportFormat( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setReportsDirectory( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setSkip( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setSkipExec( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setSkipTests( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setTest( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setTestClassesDirectory( File arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setUseFile( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setUseManifestOnlyJar( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
public void setUseSystemClassLoader( boolean arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String[] getDefaultIncludes()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public File getExcludesFile()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getIncludes()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public File getIncludesFile()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String getPluginName()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int getRerunFailingTestsCount()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRunOrder()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public File[] getSuiteXmlFiles()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void handleSummary( RunResult arg0, Exception arg1 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean hasSuiteXmlFiles()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isSkipExecution()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setIncludes( List<String> arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setRunOrder( String arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSuiteXmlFiles( File[] arg0 )
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected List<File> suiteXmlFiles()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
File descriptorFile = new File( basedir, "target/classes/META-INF/maven/plugin.xml" );
|
||||
assert descriptorFile.isFile()
|
||||
|
||||
def pluginDescriptor = new XmlParser().parse( descriptorFile );
|
||||
|
||||
assert pluginDescriptor.mojos.mojo.size() == 1
|
||||
assert pluginDescriptor.mojos.mojo.parameters.parameter.size() == 50
|
||||
|
||||
return true;
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals = clean plugin:report
|
||||
invoker.mavenOpts = -Duser.language=en -Duser.country=US -Duser.variant=US
|
||||
|
|
@ -0,0 +1,86 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.apache.maven.plugins.its.plugin</groupId>
|
||||
<artifactId>report-since</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>maven-plugin</packaging>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-plugin-api</artifactId>
|
||||
<version>2.0</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>2.3.2</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>@project.version@</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-site-plugin</artifactId>
|
||||
<version>@sitePluginVersion@</version>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
</build>
|
||||
|
||||
<reporting>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-project-info-reports-plugin</artifactId>
|
||||
<version>2.4</version>
|
||||
<reportSets>
|
||||
<reportSet>
|
||||
<reports>
|
||||
<report>index</report>
|
||||
</reports>
|
||||
</reportSet>
|
||||
</reportSets>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>@project.version@</version>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</reporting>
|
||||
</project>
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
package org;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
|
||||
/**
|
||||
* Does nothing.
|
||||
*
|
||||
* @goal noop
|
||||
* @phase process-sources
|
||||
* @requiresDependencyResolution test
|
||||
* @requiresDirectInvocation true
|
||||
* @requiresOnline
|
||||
* @inheritByDefault false
|
||||
* @execute phase="compile"
|
||||
* @aggregator
|
||||
* @since 1.0
|
||||
*
|
||||
* @deprecated You don't use test goals, do you?
|
||||
*/
|
||||
public class MyMojo
|
||||
extends AbstractMojo
|
||||
{
|
||||
|
||||
/**
|
||||
* This is a test.
|
||||
*
|
||||
* @parameter
|
||||
* @required
|
||||
*/
|
||||
@SuppressWarnings( "unused" )
|
||||
private String required;
|
||||
|
||||
/**
|
||||
* This is a test.
|
||||
*
|
||||
* @parameter expression="${string}" default-value="${project.version}/</markup-must-be-escaped>"
|
||||
* @deprecated Just testing.
|
||||
* @since 1.1
|
||||
*/
|
||||
@SuppressWarnings( "unused" )
|
||||
private String string;
|
||||
|
||||
public void execute()
|
||||
{
|
||||
// intentional do nothing
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
assert new File( basedir, 'target/generated-site' ).exists()
|
||||
|
||||
content = new File( basedir, 'target/generated-site/xdoc/noop-mojo.xml' ).text
|
||||
|
||||
assert content.contains( '<li><strong>Since</strong>: <code>1.0</code></li>' )
|
||||
assert content.contains( '<li><strong>Since</strong>: <code>1.1</code></li>' )
|
||||
|
||||
return true
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
# 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.
|
||||
|
||||
invoker.goals = process-classes javadoc:javadoc
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.apache.maven.plugins.plugin.its</groupId>
|
||||
<artifactId>mplugin3224</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<packaging>maven-plugin</packaging>
|
||||
|
||||
<description>
|
||||
Generation javadoc for private methods should be valid
|
||||
</description>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven</groupId>
|
||||
<artifactId>maven-plugin-api</artifactId>
|
||||
<version>2.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.plexus</groupId>
|
||||
<artifactId>plexus-utils</artifactId>
|
||||
<version>3.0.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.maven.plugin-tools</groupId>
|
||||
<artifactId>maven-plugin-annotations</artifactId>
|
||||
<version>@project.version@</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>2.4</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
<version>3.0.0-M1</version>
|
||||
<configuration>
|
||||
<level>private</level>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-plugin-plugin</artifactId>
|
||||
<version>@project.version@</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>default-descriptor</id>
|
||||
<phase>process-classes</phase>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>help-goal</id>
|
||||
<goals>
|
||||
<goal>helpmojo</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
package test;
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
import org.apache.maven.plugin.AbstractMojo;
|
||||
import org.apache.maven.plugins.annotations.Mojo;
|
||||
import org.apache.maven.plugins.annotations.Parameter;
|
||||
|
||||
/**
|
||||
* MOJO-DESCRIPTION. Some "quotation" marks and backslashes '\\', some <strong>important</strong> javadoc<br> and an
|
||||
* inline link to {@link org.apache.maven.plugin.AbstractMojo}.
|
||||
*
|
||||
* @deprecated As of 1.0, use the "quoted" goal instead.
|
||||
* @since 2.1
|
||||
*/
|
||||
@Mojo( name= "test" )
|
||||
public class MyMojo
|
||||
extends AbstractMojo
|
||||
{
|
||||
|
||||
/**
|
||||
* This parameter uses "quotation" marks and backslashes '\\' in its description. Those characters <em>must</em> be
|
||||
* escaped in Java string literals.
|
||||
*
|
||||
* @since 2.0
|
||||
*/
|
||||
@Parameter( defaultValue = "escape\\backslash" )
|
||||
private String defaultParam;
|
||||
|
||||
/**
|
||||
* This parameter is deprecated.
|
||||
*
|
||||
* @deprecated As of version 1.0, use the {@link #defaultParam} instead.
|
||||
*/
|
||||
@Parameter
|
||||
private String deprecatedParam;
|
||||
|
||||
@Parameter( property = "test.undocumented", required = true )
|
||||
private String undocumentedParam;
|
||||
|
||||
/**
|
||||
* Readonly parameter: should not be proposed for configuration.
|
||||
*/
|
||||
@Parameter( defaultValue = "not for configuration", readonly = true )
|
||||
private String readonly;
|
||||
|
||||
public void execute()
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue