I think the PlexusConfiguration type is also worth mentioning here.
It enabled me to pass a piece of xml right through to the plugin:
import org.codehaus.plexus.configuration.PlexusConfiguration;
...
class MyMojo [etc..]
{
/**
* @parameter
*/
private PlexusConfiguration anything;
}
Then, in the pom:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
[etc...]
<configuration>
<anything>
<can go="here"/>
<nested>
<elements and="attributes"/>
</nested>
</anything>
</configuration>
</plugin>
Kenney Westerhof wrote:
On Fri, 15 Jul 2005, John Fallows wrote:
What syntax is supported for M2 Plugin parameters of non-primitive types?
For example, java.util.Collection (and subclasses), java.util.Map (and
subclasses), arrays, Properties and JavaBeans.
Collections / arrays:
<items>
<whatever implementation="java.lang.String">value</whatever>
<whatever2 implementation="your.complex.Object">
<fieldname>value</fieldname>
<field2name>value2</field2name>
</whatever2>
<!-- this seems to be broken right now: -->
<complete.class.Name>....</complete.class.Name>
<!-- java.lang.* : -->
<integer>1</integer>
<string>stringvalue</string>
</items>
Map:
<items>
<the_key>the value</the_key>
<another_key>another value</another_key>
...
</items>
Properties:
<items>
<whatever>
<name>the key</name>
<value>the value</value>
</whatever>
..
</items>
JavaBeans:
when 'items' maps to a field that is a JavaBean, it is treated
the same as the top-level 'configuration' tag, that is mapped
to the component instance.
/**
* Items to be processed, defaults to the empty set.
*
* @parameter
*/
private Set items = Collections.EMPTY_SET;
<configuration>
<items>???</items>
</configuration>
Kind Regards,
John Fallows.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
Kenney Westerhof
http://www.neonics.com
GPG public key: http://www.gods.nl/~forge/kenneyw.key
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]