[
https://jira.codehaus.org/browse/MRESOURCES-158?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=290536#comment-290536
]
Robert Scholte commented on MRESOURCES-158:
-------------------------------------------
Here's an example of a help goal as specified in the META-INF/maven/plugin.xml:
{code:xml}
<mojo>
<goal>help</goal>
<description>Display help information on maven-jar-plugin.<br/>
Call <pre> mvn jar:help -Ddetail=true
-Dgoal=&lt;goal-name&gt;</pre> to display parameter
details.</description>
<requiresDirectInvocation>false</requiresDirectInvocation>
<requiresProject>false</requiresProject>
<requiresReports>false</requiresReports>
<aggregator>false</aggregator>
<requiresOnline>false</requiresOnline>
<inheritedByDefault>true</inheritedByDefault>
<implementation>org.apache.maven.plugin.jar.HelpMojo</implementation>
<language>java</language>
<instantiationStrategy>per-lookup</instantiationStrategy>
<executionStrategy>once-per-session</executionStrategy>
<threadSafe>true</threadSafe>
<parameters>
<parameter>
<name>detail</name>
<type>boolean</type>
<required>false</required>
<editable>true</editable>
<description>If <code>true</code>, display all settable
properties for each goal.</description>
</parameter>
<parameter>
<name>goal</name>
<type>java.lang.String</type>
<required>false</required>
<editable>true</editable>
<description>The name of the goal for which to show help. If
unspecified, all goals will be displayed.</description>
</parameter>
<parameter>
<name>indentSize</name>
<type>int</type>
<required>false</required>
<editable>true</editable>
<description>The number of spaces per indentation level, should be
positive.</description>
</parameter>
<parameter>
<name>lineLength</name>
<type>int</type>
<required>false</required>
<editable>true</editable>
<description>The maximum length of a display line, should be
positive.</description>
</parameter>
</parameters>
<configuration>
<detail implementation="boolean"
default-value="false">${detail}</detail>
<goal implementation="java.lang.String">${goal}</goal>
<indentSize implementation="int"
default-value="2">${indentSize}</indentSize>
<lineLength implementation="int"
default-value="80">${lineLength}</lineLength>
</configuration>
</mojo>
{code}
The configuration-section contains these values.
Is it consistent? Probably not, but it should. Just like {{default-value}} and
{{expression}} they are often confused, but they are slightly different.
{quote}Does mandatory then mean a not-null not-empty string or is this up to
the plugin to interpret ?{quote}
This is verified by Plexus. As a plugin-developer you only have to say it is
{{@required}}.
> outputDirectory is marked as mandatory whereas it is not really mandatory
> -------------------------------------------------------------------------
>
> Key: MRESOURCES-158
> URL: https://jira.codehaus.org/browse/MRESOURCES-158
> Project: Maven 2.x Resources Plugin
> Issue Type: Bug
> Affects Versions: 2.5
> Reporter: Jorg Heymans
>
> in the documentation and plugin descriptor the outputDirectory config element
> is marked as mandatory. But since there is a default value of
> ${project.build.outputDirectory} this element is not really mandatory. Other
> configuration elements with the same default value semantics are not marked
> as mandatory so i think for outputDirectory the same semantics should be
> applied.
> this is especially troublesome for ideas that try to assist in maven
> configuration and rely on the plugin descriptor to figure out if elements are
> mandatory or not. See http://youtrack.jetbrains.net/issue/IDEA-80626
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira