[ 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