Fix javadoc errors

- Fix the javadoc error raised by the javadoc-maven-plugin.
- Configure the javadoc-maven-plugin to accept custom javadoc annotations
from maven mojo development.
This commit is contained in:
Jose Luis Osorno
2019-01-11 12:37:33 +01:00
parent 271ba3977f
commit 29fdb576ab
13 changed files with 99 additions and 23 deletions

View File

@@ -164,6 +164,8 @@ public abstract class AbstractRefreshWebappMojo extends AbstractMojo {
/** /**
* Perform a Refresh of Web Scripts container in webapp. * Perform a Refresh of Web Scripts container in webapp.
* Called by specific refresh mojo implementation. * Called by specific refresh mojo implementation.
*
* @param url the relative path to refresh webscripts
*/ */
protected void refreshWebScripts(String url) { protected void refreshWebScripts(String url) {
// Create the Refresh URL for the Alfresco Tomcat server // Create the Refresh URL for the Alfresco Tomcat server
@@ -184,6 +186,8 @@ public abstract class AbstractRefreshWebappMojo extends AbstractMojo {
/** /**
* Perform a Clear Dependency Caches call on Share webapp. * Perform a Clear Dependency Caches call on Share webapp.
* Called by specific refresh mojo implementation, currently only applicable to Share webapp. * Called by specific refresh mojo implementation, currently only applicable to Share webapp.
*
* @param url the relative path to clear cache
*/ */
protected void clearDependencyCaches(String url) { protected void clearDependencyCaches(String url) {
// Create the Clear Cache URL for the Alfresco Tomcat server // Create the Clear Cache URL for the Alfresco Tomcat server

View File

@@ -269,6 +269,8 @@ public abstract class AbstractRunMojo extends AbstractMojo {
/** /**
* Get the Tomcat port. By default the port is changed by using the maven.alfresco.tomcat.port property * Get the Tomcat port. By default the port is changed by using the maven.alfresco.tomcat.port property
* but for legacy and external configuration purposes maven.tomcat.port will override if defined * but for legacy and external configuration purposes maven.tomcat.port will override if defined
*
* @return the Tomcat port
*/ */
protected String getPort() { protected String getPort() {
String port = tomcatPort; String port = tomcatPort;
@@ -281,7 +283,9 @@ public abstract class AbstractRunMojo extends AbstractMojo {
} }
/** /**
* Check if Tomcat is already running.
* *
* @return <code>true</code> if Tomcat is already running, <code>false</code> otherwise
*/ */
protected boolean tomcatIsRunning() { protected boolean tomcatIsRunning() {
@@ -310,7 +314,7 @@ public abstract class AbstractRunMojo extends AbstractMojo {
* Copy the alfresco-global.properties files. It contains database connection parameters and * Copy the alfresco-global.properties files. It contains database connection parameters and
* other general configuration for Alfresco Repository (alfresco.war) * other general configuration for Alfresco Repository (alfresco.war)
* *
* @throws MojoExecutionException * @throws MojoExecutionException when any problem appears copying the Alfresco global properties file
*/ */
protected void copyAlfrescoGlobalProperties() throws MojoExecutionException { protected void copyAlfrescoGlobalProperties() throws MojoExecutionException {
getLog().info("Copying and filtering alfresco-global.properties files to target/test-classes"); getLog().info("Copying and filtering alfresco-global.properties files to target/test-classes");
@@ -374,7 +378,7 @@ public abstract class AbstractRunMojo extends AbstractMojo {
* Copy the Alfresco Enterprise license to its correct place in the Platform WAR, if it exists. * Copy the Alfresco Enterprise license to its correct place in the Platform WAR, if it exists.
* It is not enough to have it on the test classpath, then it will start up as Trial license... * It is not enough to have it on the test classpath, then it will start up as Trial license...
* *
* @throws MojoExecutionException * @throws MojoExecutionException when any problem appears copying the Alfresco license
*/ */
protected void copyAlfrescoLicense() throws MojoExecutionException { protected void copyAlfrescoLicense() throws MojoExecutionException {
@@ -411,7 +415,7 @@ public abstract class AbstractRunMojo extends AbstractMojo {
/** /**
* Copy Share Config Custom in order to have global overrides for development and dynamic port * Copy Share Config Custom in order to have global overrides for development and dynamic port
* *
* @throws MojoExecutionException * @throws MojoExecutionException when any problem appears copying share config custom file
*/ */
protected void copyShareConfigCustom() throws MojoExecutionException { protected void copyShareConfigCustom() throws MojoExecutionException {
final String warOutputDir = getWarOutputDir(SHARE_WAR_PREFIX_NAME); final String warOutputDir = getWarOutputDir(SHARE_WAR_PREFIX_NAME);
@@ -452,7 +456,7 @@ public abstract class AbstractRunMojo extends AbstractMojo {
* There is no custom classpath resolve mechanism for Share log4j, * There is no custom classpath resolve mechanism for Share log4j,
* to log custom stuff overriding standard log4j.properties is needed. * to log custom stuff overriding standard log4j.properties is needed.
* *
* @throws MojoExecutionException * @throws MojoExecutionException when any problem appears copying the share log4j configuration
*/ */
protected void copyShareLog4jConfig() throws MojoExecutionException { protected void copyShareLog4jConfig() throws MojoExecutionException {
if (!useCustomShareLog4jConfig) { if (!useCustomShareLog4jConfig) {
@@ -492,7 +496,9 @@ public abstract class AbstractRunMojo extends AbstractMojo {
/** /**
* Copy and Build hotswap-agent.properties * Copy and Build hotswap-agent.properties
* *
* @throws MojoExecutionException * @param warPrefix path to the war root directory
*
* @throws MojoExecutionException when any problem appears copying hotswap agent properties
*/ */
protected void copyHotswapAgentProperties(String warPrefix) throws MojoExecutionException { protected void copyHotswapAgentProperties(String warPrefix) throws MojoExecutionException {
if ( copyHotswapAgentConfig == false ) { if ( copyHotswapAgentConfig == false ) {
@@ -526,6 +532,8 @@ public abstract class AbstractRunMojo extends AbstractMojo {
* Build the customized Platform webapp (i.e. the Repository, alfresco.war) * Build the customized Platform webapp (i.e. the Repository, alfresco.war)
* that should be deployed by Tomcat by applying all AMPs and JARs from * that should be deployed by Tomcat by applying all AMPs and JARs from
* the {@code <platformModules> } configuration. * the {@code <platformModules> } configuration.
*
* @throws MojoExecutionException when any problem appears building the platform war
*/ */
protected void buildPlatformWar() throws MojoExecutionException { protected void buildPlatformWar() throws MojoExecutionException {
buildCustomWarInDir(PLATFORM_WAR_PREFIX_NAME, platformModules, buildCustomWarInDir(PLATFORM_WAR_PREFIX_NAME, platformModules,
@@ -546,6 +554,8 @@ public abstract class AbstractRunMojo extends AbstractMojo {
* Build the customized Share webapp (i.e. the share.war) * Build the customized Share webapp (i.e. the share.war)
* that should be deployed by Tomcat by applying all AMPs and JARs from * that should be deployed by Tomcat by applying all AMPs and JARs from
* the {@code <shareModules> } configuration. * the {@code <shareModules> } configuration.
*
* @throws MojoExecutionException when any problem appears building the share war
*/ */
protected void buildShareWar() throws MojoExecutionException { protected void buildShareWar() throws MojoExecutionException {
buildCustomWarInDir(SHARE_WAR_PREFIX_NAME, shareModules, buildCustomWarInDir(SHARE_WAR_PREFIX_NAME, shareModules,
@@ -574,7 +584,7 @@ public abstract class AbstractRunMojo extends AbstractMojo {
* @param originalWarGroupId the Maven groupId for the original war file that should be customized * @param originalWarGroupId the Maven groupId for the original war file that should be customized
* @param originalWarArtifactId the Maven artifactId for the original war file that should be customized * @param originalWarArtifactId the Maven artifactId for the original war file that should be customized
* @param originalWarVersion the Maven version for the original war file that should be customized * @param originalWarVersion the Maven version for the original war file that should be customized
* @throws MojoExecutionException * @throws MojoExecutionException when any problem appears building the custom war
*/ */
protected void buildCustomWarInDir(String warName, protected void buildCustomWarInDir(String warName,
List<ModuleDependency> modules, List<ModuleDependency> modules,
@@ -701,7 +711,7 @@ public abstract class AbstractRunMojo extends AbstractMojo {
* *
* @param warName the name of the custom war * @param warName the name of the custom war
* @return the customized war file artifactId, to be used by the tomcat7 plugin * @return the customized war file artifactId, to be used by the tomcat7 plugin
* @throws MojoExecutionException * @throws MojoExecutionException when any problem appears packaging or installing the custom war
*/ */
protected String packageAndInstallCustomWar(String warName) throws MojoExecutionException { protected String packageAndInstallCustomWar(String warName) throws MojoExecutionException {
final String warArtifactId = "${project.artifactId}-" + warName; final String warArtifactId = "${project.artifactId}-" + warName;
@@ -740,7 +750,7 @@ public abstract class AbstractRunMojo extends AbstractMojo {
* configured in the SDK project. * configured in the SDK project.
* *
* @param fork true if tomcat process should be forked * @param fork true if tomcat process should be forked
* @throws MojoExecutionException * @throws MojoExecutionException when any problem appears starting tomcat
*/ */
protected void startTomcat(boolean fork) throws MojoExecutionException { protected void startTomcat(boolean fork) throws MojoExecutionException {
getLog().info("Starting Tomcat, fork = " + fork); getLog().info("Starting Tomcat, fork = " + fork);

View File

@@ -26,9 +26,10 @@ import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugin.MojoFailureException;
/** /**
* <p>
* Performs a AMP to WAR overlay invoking the Alfresco Repository ModuleManagementTool. * Performs a AMP to WAR overlay invoking the Alfresco Repository ModuleManagementTool.
* It therefore wraps and emulates the same WAR overlay performed by Alfresco MMT. * It therefore wraps and emulates the same WAR overlay performed by Alfresco MMT.
* <p/> * </p>
* This goal will install the AMP file(s) found in ${ampLocation} onto the WAR (or exploded WAR) found in ${warLocation} * This goal will install the AMP file(s) found in ${ampLocation} onto the WAR (or exploded WAR) found in ${warLocation}
* *
* @version $Id:$ * @version $Id:$

View File

@@ -35,12 +35,13 @@ import java.util.Properties;
import static org.twdata.maven.mojoexecutor.MojoExecutor.*; import static org.twdata.maven.mojoexecutor.MojoExecutor.*;
/** /**
* <p>
* Alfresco Plugin mojo that are used when you want to run Integration Tests. * Alfresco Plugin mojo that are used when you want to run Integration Tests.
* It will package up all the Integration Test classes and execute contained * It will package up all the Integration Test classes and execute contained
* tests with the Maven Failsafe plugin. The test classes will be added * tests with the Maven Failsafe plugin. The test classes will be added
* to the platform war so they can be executed remotely via * to the platform war so they can be executed remotely via
* the ${@link org.alfresco.rad.test.AlfrescoTestRunner} * the AlfrescoTestRunner.
* <p/> * </p>
* The Alfresco RAD module is also added to the Platform WAR so * The Alfresco RAD module is also added to the Platform WAR so
* the Alfresco Test runner classes are available. * the Alfresco Test runner classes are available.
* *

View File

@@ -21,11 +21,12 @@ import org.apache.maven.plugins.annotations.LifecyclePhase;
import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Mojo;
/** /**
* <p>
* Refresh Alfresco Repo and Share Mojo. * Refresh Alfresco Repo and Share Mojo.
* Will refresh the Web Script container so new and changed * Will refresh the Web Script container so new and changed
* Spring Surf Web Scripts are detected. * Spring Surf Web Scripts are detected.
* Will also clear the dependency caches for web resources (CSS, JS, etc). * Will also clear the dependency caches for web resources (CSS, JS, etc).
* <p/> * </p>
* It is important to execute the refresh calls in the compile phase, * It is important to execute the refresh calls in the compile phase,
* otherwise the files will be copied after this and the refresh calls * otherwise the files will be copied after this and the refresh calls
* will not be recognized. * will not be recognized.

View File

@@ -21,10 +21,11 @@ import org.apache.maven.plugins.annotations.LifecyclePhase;
import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Mojo;
/** /**
* <p>
* Refresh Alfresco Repository (alfresco.war) Mojo. * Refresh Alfresco Repository (alfresco.war) Mojo.
* Will refresh the Web Script container so new and changed * Will refresh the Web Script container so new and changed
* Web Scripts are detected. * Web Scripts are detected.
* <p/> * </p>
* It is important to execute the refresh calls in the compile phase, * It is important to execute the refresh calls in the compile phase,
* otherwise the files will be copied after this and the refresh calls * otherwise the files will be copied after this and the refresh calls
* will not be recognized. * will not be recognized.

View File

@@ -21,11 +21,12 @@ import org.apache.maven.plugins.annotations.LifecyclePhase;
import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Mojo;
/** /**
* <p>
* Refresh Alfresco Share (share.war) Mojo. * Refresh Alfresco Share (share.war) Mojo.
* Will refresh the Web Script container so new and changed * Will refresh the Web Script container so new and changed
* Spring Surf Web Scripts are detected. * Spring Surf Web Scripts are detected.
* Will also clear the dependency caches for web resources (CSS, JS, etc). * Will also clear the dependency caches for web resources (CSS, JS, etc).
* <p/> * </p>
* It is important to execute the refresh calls in the compile phase, * It is important to execute the refresh calls in the compile phase,
* otherwise the files will be copied after this and the refresh calls * otherwise the files will be copied after this and the refresh calls
* will not be recognized. * will not be recognized.

View File

@@ -28,8 +28,7 @@ import org.apache.maven.project.MavenProject;
/** /**
* Removes -SNAPSHOT suffix from the version number (if present), optionally replacing it with a timestamp. * Removes -SNAPSHOT suffix from the version number (if present), optionally replacing it with a timestamp.
* The result is provided in the Maven property ${noSnapshotVersion} (name can be changed using * The result is provided in the Maven property ${noSnapshotVersion}.
* <propertyName>myCustomVersion</>).
* This feature is mostly needed to avoid Alfresco failing when installing AMP modules with non-numeric * This feature is mostly needed to avoid Alfresco failing when installing AMP modules with non-numeric
* versions. * versions.
* *
@@ -67,7 +66,7 @@ public class VersionMojo extends AbstractMojo {
/** /**
* Allows to append a custom (numeric) value to the current artifact's version, * Allows to append a custom (numeric) value to the current artifact's version,
* i.e. appending the SCM build number can be accomplished defining * i.e. appending the SCM build number can be accomplished defining
* <customVersionSuffix>${buildnumber}</customVersionSuffix> in the plugin * &lt;customVersionSuffix&gt;${buildnumber}&lt;/customVersionSuffix&gt; in the plugin
* configuration. * configuration.
* *
* @parameter property="maven.alfresco.customVersionSuffix" * @parameter property="maven.alfresco.customVersionSuffix"

View File

@@ -14,7 +14,7 @@ import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.util.xml.Xpp3Dom; import org.codehaus.plexus.util.xml.Xpp3Dom;
/** /**
* This class provides AMP unpacking support for projects depending on AMPs * This class provides AMP unpacking support for projects depending on AMPs
* This allows for example AMPs to be specified as <overlay> in the maven-war-plugin * This allows for example AMPs to be specified as &lt;overlay&gt; in the maven-war-plugin
* @author mindthegab * @author mindthegab
* *
*/ */

View File

@@ -21,15 +21,18 @@ package org.alfresco.maven.plugin.config;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
/** /**
* <p>
* Defines an Alfresco extension module dependency (JAR or AMP) to be * Defines an Alfresco extension module dependency (JAR or AMP) to be
* overlayed on an Alfresco webapp file. * overlayed on an Alfresco webapp file.
* <p/> * </p>
* <p>
* This is so we can skip the WAR projects in the AIO project, * This is so we can skip the WAR projects in the AIO project,
* and so we can include the Share Services AMP when running * and so we can include the Share Services AMP when running
* with a simple platform JAR. * with a simple platform JAR.
* <p/> * </p>
* <p>
* This class is used by the RunMojo class. * This class is used by the RunMojo class.
* <p/> * </p>
* Alfresco Maven Plugin config looks something like this: * Alfresco Maven Plugin config looks something like this:
* <pre> * <pre>
* {@code * {@code

View File

@@ -19,8 +19,9 @@
package org.alfresco.maven.plugin.config; package org.alfresco.maven.plugin.config;
/** /**
* <p>
* Tomcat Dependency used in Embedded Tomcat Maven plugin configuration. * Tomcat Dependency used in Embedded Tomcat Maven plugin configuration.
* <p/> * </p>
* Alfresco Maven Plugin config looks something like this: * Alfresco Maven Plugin config looks something like this:
* <pre> * <pre>
* {@code * {@code

View File

@@ -18,11 +18,12 @@
package org.alfresco.maven.plugin.config; package org.alfresco.maven.plugin.config;
/** /**
* <p>
* Tomcat Webapp used in Embedded Tomcat Maven plugin configuration. * Tomcat Webapp used in Embedded Tomcat Maven plugin configuration.
* These are custom webapps that you would want to include for some reason * These are custom webapps that you would want to include for some reason
* (The {webapp artifact}.war need to be available in a Maven Repo). * (The {webapp artifact}.war need to be available in a Maven Repo).
* Note. the standard webapps are included with plugin properties such as enablePlatform and enableShare. * Note. the standard webapps are included with plugin properties such as enablePlatform and enableShare.
* <p/> * </p>
* Alfresco Maven Plugin config looks something like this: * Alfresco Maven Plugin config looks something like this:
* <pre> * <pre>
* {@code * {@code

53
pom.xml
View File

@@ -166,6 +166,59 @@
<skip>${skipTests}</skip> <skip>${skipTests}</skip>
</configuration> </configuration>
</plugin> </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<tags>
<tag>
<name>goal</name>
<placement>a</placement>
<head>Goal:</head>
</tag>
<tag>
<name>requiresDependencyResolution</name>
<placement>a</placement>
<head>Requires Dependency Resolution:</head>
</tag>
<tag>
<name>description</name>
<placement>a</placement>
<head>Description:</head>
</tag>
<tag>
<name>phase</name>
<placement>a</placement>
<head>Phase:</head>
</tag>
<tag>
<name>requiresProject</name>
<placement>a</placement>
<head>Requires Project:</head>
</tag>
<tag>
<name>threadSafe</name>
<placement>a</placement>
<head>Thread-Safe:</head>
</tag>
<tag>
<name>required</name>
<placement>a</placement>
<head>Required:</head>
</tag>
<tag>
<name>readonly</name>
<placement>a</placement>
<head>Read only:</head>
</tag>
<tag>
<name>parameter</name>
<placement>a</placement>
<head>Parameter:</head>
</tag>
</tags>
</configuration>
</plugin>
</plugins> </plugins>
</pluginManagement> </pluginManagement>
<extensions> <extensions>