<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sonatype Blog &#187; Maven 3</title>
	<atom:link href="http://www.sonatype.com/people/tag/maven-3/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sonatype.com/people</link>
	<description>Sonatype is transforming software development with tools, information and services that enable organizations to build better software, faster, using open-source components.</description>
	<lastBuildDate>Wed, 23 May 2012 14:24:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Maven 3: The Future of Enterprise Java Build Infrastructure</title>
		<link>http://www.sonatype.com/people/2011/05/maven-3-the-future-of-enterprise-java-build-infrastructure/</link>
		<comments>http://www.sonatype.com/people/2011/05/maven-3-the-future-of-enterprise-java-build-infrastructure/#comments</comments>
		<pubDate>Thu, 05 May 2011 14:00:00 +0000</pubDate>
		<dc:creator>hloney</dc:creator>
				<category><![CDATA[Maven]]></category>
		<category><![CDATA[Sonatype]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[EclipseCon 2011]]></category>
		<category><![CDATA[Maven 3]]></category>

		<guid isPermaLink="false">http://www.sonatype.com/people/?p=7758</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2011/05/maven-3-the-future-of-enterprise-java-build-infrastructure/' addthis:title='Maven 3: The Future of Enterprise Java Build Infrastructure '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>The Maven 3: The Future of Enterprise Java Build Infrastructure presentation is now available for viewing. This presentation was given at EclipseCon 2011 by Sonatype founder Jason van Zyl. More on this presentation: Maven 3 is the best version of Maven yet. Maven 3 is faster, has been optimized for IDE use, and is fully [...]]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2011/05/maven-3-the-future-of-enterprise-java-build-infrastructure/' addthis:title='Maven 3: The Future of Enterprise Java Build Infrastructure '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p><!--dzoneZ=none-->The <strong>Maven 3: The Future of Enterprise Java Build Infrastructure</strong> presentation is now available for viewing. This presentation was given at EclipseCon 2011 by Sonatype founder Jason van Zyl.</p>

<p><strong>More on this presentation:</strong></p>

<p>Maven 3 is the best version of Maven yet. Maven 3 is faster, has been  optimized for IDE use, and is fully backward compatible with Maven 2.  One of the big focuses of Maven 3 is to provide a more reliable, more  stable and better performing build tool. Faster Maven builds lead to  higher developer productivity in your organization.</p>

<p><strong>Watch the video below:</strong></p>

<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="500" height="405" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/I4zSHgQ0fOE?fs=1&amp;hl=en_US&amp;rel=0" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="500" height="405" src="http://www.youtube.com/v/I4zSHgQ0fOE?fs=1&amp;hl=en_US&amp;rel=0" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sonatype.com/people/2011/05/maven-3-the-future-of-enterprise-java-build-infrastructure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nexus 1.9 &#8211; Performance, Compatibility, and Dependency Browsing</title>
		<link>http://www.sonatype.com/people/2011/04/nexus-1-9-performance-compatibility-and-dependency-browsing/</link>
		<comments>http://www.sonatype.com/people/2011/04/nexus-1-9-performance-compatibility-and-dependency-browsing/#comments</comments>
		<pubDate>Thu, 14 Apr 2011 16:29:33 +0000</pubDate>
		<dc:creator>Brian Fox</dc:creator>
				<category><![CDATA[Nexus]]></category>
		<category><![CDATA[Sonatype]]></category>
		<category><![CDATA[Maven 3]]></category>
		<category><![CDATA[nexus open source]]></category>
		<category><![CDATA[nexus professional]]></category>

		<guid isPermaLink="false">http://www.sonatype.com/people/?p=7289</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2011/04/nexus-1-9-performance-compatibility-and-dependency-browsing/' addthis:title='Nexus 1.9 &#8211; Performance, Compatibility, and Dependency Browsing '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>Sonatype has released the latest version of our industry leading repository manager &#8211; Nexus 1.9.1 This post outlines some of the new features available in all 1.9 releases of both Nexus Professional and Nexus Open Source. This release has a lot of important, under-the-hood changes &#8211; including a number of changes to the core infrastructure of [...]]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2011/04/nexus-1-9-performance-compatibility-and-dependency-browsing/' addthis:title='Nexus 1.9 &#8211; Performance, Compatibility, and Dependency Browsing '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p><strong>Sonatype has released the latest version of our industry leading repository manager &#8211; Nexus 1.9.1</strong></p>

<p><span style="font-weight: normal;">This post outlines some of the new features available in all 1.9 releases of both Nexus Professional and Nexus Open Source. This release has a lot of important, under-the-hood changes &#8211; including a number of changes to the core infrastructure of Nexus to increase Maven 3 compatibility and to incorporate open source libraries for repository interaction (Aether and Maven Indexer).   In addition to a wide array of fixes and features in Nexus Open Source, you can now use Nexus Professional to analyze Maven Dependencies.</span></p>

<ul>
    <li><a href="http://www.sonatype.com/nexus-professional.html" target="_blank">Download Nexus Professional 1.9.1</a></li>
    <li><a href="http://nexus.sonatype.org/download-nexus.html" target="_blank">Download Nexus Open Source 1.9.1</a></li>
</ul>

<h3>Changes in Nexus Professional 1.9.1</h3>

<p>Nexus Professional has the following key benefits.  For a complete list of all features added and bugs fixed in Nexus Professional 1.9.1, <a href="https://issues.sonatype.org/secure/ReleaseNote.jspa?&amp;version=10910&amp;projectId=10060" target="_blank">see the official release notes</a> (note: release notes require a log-in).</p>

<ul>
    <li><strong>Moved the Custom Metadata Plugin to optional plugins</strong> &#8211; This Custom Metadata plugin is now shipped as an optional dependency.   If you are using the Custom Metadata plugin you will need to copy this plugin from the optional dependencies directory to the plugins directory.   Nexus will then start up this plugin the next time it is restarted.</li>
    <li><strong>The New Maven Module Dependency Report</strong> &#8211; Nexus Professional adds a helpful report for people browsing the repository.   For the first time, you can click on an artifact and see a report of Maven dependencies.   From this report you can click through to search for dependencies.</li>
</ul>

<p><span id="more-7289"></span></p>

<p><img title="maven-dependency" src="http://www.sonatype.com/people/wp-content/uploads/2011/02/maven-dependency.png" alt="" width="550" /></p>

<h3>Changes in Nexus Open Source</h3>

<p>Nexus Open Source 1.9.1 contains the following new features and updated capabilities. We&#8217;ve summarized some of the major features and bug fixes for your convenience. If you are looking for more details about a particular feature or fix, <a href="https://issues.sonatype.org/secure/ReleaseNote.jspa?projectId=10001&amp;version=10909" target="_blank">read the full release notes</a> for a comprehensive list of features added and bugs fixed.</p>

<ul>
    <li>New Nexus Archetype Plugin - Nexus 1.9.1 will now add any Maven Archetypes you deploy to your own repositories to the <a href="http://maven.apache.org/archetype/archetype-common/archetype-catalog.html" target="_blank">archetype catalog</a>. Once an archetype is available in the archetype catalog, you can then access archetypes using tools like m2eclipse, which reference the archetype catalog when creating a new project.</li>
    <li>Uses the Maven Indexer - Sonatype has successfully completed the donation of the Nexus Indexer to the Apache Software Foundation, and we are integrating this newly donated &#8220;Maven Indexer&#8221; in this release of Nexus. For more information, read <a href="http://www.sonatype.com/people/2011/02/maven-indexer-sonatypes-donation-to-repository-search/" target="_blank">this post</a>.</li>
    <li>Improvements to the Roles and Permissions Interface - The Nexus team spend a considerable amount of time trying to simplify the Roles and Permissions interface based on user feedback. We&#8217;ve tried to make it easier to understand at first glance, and we&#8217;re also tried to reduce the amount of work necessary to make changes to roles and permissions.</li>
    <li>Integrated Aether - Aether is a new open source library designed to capture best practices for retrieving information from Maven repositories. It provides a clean interface and manages fetching both metadata and artifacts. This version of Nexus incorporates Aether and replaces Mercury. Integrating Aether has also solved a number of minor issues involving Maven metadata and compatibility with Maven 3.</li>
    <li>Switched to Java 6 - Nexus has upgraded to Java 6.</li>
    <li>Nexus Upgraded Security from JSecurity to Apache Shiro - As an end-user you shouldn&#8217;t notice many changes in the interface to support this migration, but if you are developing custom security realms for Nexus, <a href="http://maven.40175.n5.nabble.com/Security-Changes-Switched-to-Shiro-td3201493.html" target="_blank">this post</a> describes some of the changes you need to make to support the move to Shiro. Note: After this upgrade, both first name and last name are required fields for a user. If you have an existing user that only have one name (&#8220;Administrator&#8221;), you will need to supply a first and last name for this user if you ever edit this user through Nexus UI.</li>
    <li>Added robots.txt to bundle to stop public repos from getting crawled</li>
    <li>Improved Reindexing Performance - Reindexing performance has been considerably improved, achieving a nearly 2x speed up for certain repositories.</li>
    <li>Switched to the Affero General Public License - Nexus Open Source is now covered under the Affero General Public License. For more information about this switch see <a href="http://www.sonatype.com/people/2011/01/why-nexus-moved-to-the-affero-general-public-license/" target="_blank">this post</a>.</li>
    <li>Added a Start-up Script for 64-bit windows Platforms &#8211; If you are running Nexus on a 64-bit Window platform, you can now start Nexus with a 64-bit Windows JSW startup wrapper.</li>
</ul>

<p><strong>For information on upgrading Nexus, <a href="http://nexus.sonatype.org/upgrading-nexus.html" target="_blank">click here</a>.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sonatype.com/people/2011/04/nexus-1-9-performance-compatibility-and-dependency-browsing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Configuring Plugin Goals in Maven 3</title>
		<link>http://www.sonatype.com/people/2011/03/configuring-plugin-goals-in-maven-3/</link>
		<comments>http://www.sonatype.com/people/2011/03/configuring-plugin-goals-in-maven-3/#comments</comments>
		<pubDate>Fri, 04 Mar 2011 15:01:48 +0000</pubDate>
		<dc:creator>bbentmann</dc:creator>
				<category><![CDATA[Sonatype]]></category>
		<category><![CDATA[Maven]]></category>
		<category><![CDATA[Maven 3]]></category>
		<category><![CDATA[Maven Enforcer plugin]]></category>

		<guid isPermaLink="false">http://www.sonatype.com/people/?p=7525</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2011/03/configuring-plugin-goals-in-maven-3/' addthis:title='Configuring Plugin Goals in Maven 3 '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>In Maven 3.0.3, we introduced some improvements to the way plugin goals can be configured. This post summarizes these improvements and gives some examples of how Maven plugin configuration has been enhanced. We&#8217;ve focused on making improvements that will reduce the friction of plugin configuration for both plugin developers and Maven end-users. First, a general [...]]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2011/03/configuring-plugin-goals-in-maven-3/' addthis:title='Configuring Plugin Goals in Maven 3 '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p>In Maven 3.0.3, we introduced some improvements to the way plugin goals can be configured. This post summarizes these improvements and gives some examples of how Maven plugin configuration has been enhanced.   We&#8217;ve focused on making improvements that will reduce the friction of plugin configuration for both plugin developers and Maven end-users.</p>

<p>First, a general tip for users interested in using these enhancements in POMs: use the <a rel="nofollow" href="http://maven.apache.org/enforcer/enforcer-rules/requireMavenVersion.html" target="_blank">requireMavenVersion</a> rule from the Maven Enforcer Plugin and required Maven version 3.0.3.  This will save other team members from running into strange build failures due to plugin misconfiguration if they are still using previous Maven versions.   Likewise, plugin authors that take advantage of these enhancements should properly declare the Maven prerequisite in the plugin POM.</p>

<p><span id="more-7525"></span></p>

<h2>Generic collections</h2>

<p>The plugin configurator can now employ the generic type argument of a collection parameter to determine the type of the elements. In practice this means plugins can use collections as input parameters more freely without having to worry about the user being forced to specify the proper element type in the POM.</p>

<p>For instance, the goal parameter:</p>

<pre>/** @parameter */
java.util.List&lt;java.io.File&gt; files;</pre>

<p>can be configured like this in the new Maven version:</p>

<pre>&lt;files&gt;
  &lt;!-- Maven 3.0.3 can take care of converting this to a java.io.File instance --&gt;</pre>

<pre>  &lt;file&gt;pom.xml&lt;/file&gt;</pre>

<pre>  &lt;!-- The previously required implementation attribute is now superfluous but still works --&gt;
  &lt;file implementation="java.io.File"&gt;build.xml&lt;/file&gt;
&lt;/files&gt;</pre>

<p>Instead of having to specify the type of each element, Maven 3.0.3 will now automatically convert the first element in the previous example to an object of type &#8220;java.io.File&#8221;.</p>

<p>In absence of the <tt>implementation</tt> attribute, Maven usually looks for a class named <tt><em>&lt;goalPackage&gt;</em></tt><tt>.</tt><tt><em>&lt;xmlElement&gt;</em></tt> to determine the element type. The recognition of generics now enables plugin authors to use bean classes for collection elements that reside in a different package than the plugin goals.   In summary, collections now provide the same ease of configuration as classical arrays.</p>

<h2>Automatic conversion of arrays to collections, and vice versa</h2>

<p>Continuing in the spirit of the previous improvement, the new plugin configurator will now automatically convert a collection obtained from a parameter expression to an array if that&#8217;s the type expected by the plugin parameter. Likewise, an array would be converted to a collection if needed. The bottom line is that plugin authors targeting recent Maven versions can freely decide to use an array or a collection for a plugin parameter regardless of whether its default value actually yields a collection or array:</p>

<pre>/** @parameter default-value="${project.compileSourceRoots}" */
List&lt;String&gt; sourceRootsAsCollection;

/** @parameter default-value="${project.compileSourceRoots}" */
String[] sourceRootsAsArray;</pre>

<p>Before this change was made to the configurator plugin developers and Maven users had to be very careful about passing an array to a method that expected a List or vice versa.   While this might seem like a minor change, it is one of many that will make plugin development easier.</p>

<h2>Configuration of collection/array via system property</h2>

<p>For many plugin parameters it is occasionally convenient to specify their values from the command line via system properties. In the past, this was limited to parameters of simple types like <tt>String</tt> or <tt>Boolean</tt>. The latest Maven release finally allows plugin users to configure collections or arrays from the command line via comma-separated strings. Take for example a plugin parameter like this:</p>

<pre>/** @parameter expression="${includes}" */
String[] includes;</pre>

<p>This can be configured from the command line as follows:</p>

<pre>mvn &lt;goal&gt; -Dincludes=*Foo,Bar*</pre>

<p>Plugin authors that wish to enable CLI-based configuration of arrays/collections just need to add the <tt>expression</tt> tag to their parameter annotation. Note that if compatibility with older Maven versions is to be kept, the parameter type must not be an interface but a concrete collection class or an array to avoid another shortcoming in the old configurator.</p>

<h2>Inlined collections</h2>

<p>Many users complain that Maven POMs make heavy use of container elements for collections. Instead of just listing a series of dependency elements, you have to wrap all of your dependency elements in a dependencies element. The same is true for includes and excludes and other elements throughout the POM.  This extra redundancy often adds up to some very large POMs. In Maven 3.0.3, we&#8217;ve made a change to the plugin API that will support plugin configuration without requiring container elements for collections.  Here is an example:</p>

<pre>&lt;fileset&gt;
  &lt;directory&gt;src/demo&lt;/directory&gt;
  &lt;include&gt;Foo*&lt;/include&gt;
  &lt;include&gt;Bar*&lt;/include&gt;
  &lt;exclude&gt;*Bad&lt;/exclude&gt;
&lt;/fileset&gt;</pre>

<p>Previously, Maven would only look for a field or setter when processing the <tt>&lt;include&gt;</tt> elements. Now it also looks for an adder. So to support the above configuration, a plugin author would need to implement the configured bean like this:</p>

<pre>public class Fileset
{

    private List&lt;String&gt; includes = new ArrayList&lt;String&gt;();

    public void addInclude( String include )
    {
        includes.add( include );
    }

    ...
}</pre>

<p>The adder needs to be named <tt>add</tt><tt><em>&lt;xmlElement&gt;</em></tt><tt>()</tt> and must be public, non-static and have a single argument; it may have a return value. In case where multiple such adders with the same name exists, it is undefined which one gets actually called so be sure to avoid overloading the adder.</p>

<p>Given that merging of plugin configuration during POM inheritance or profile injection is purely based on the XML structure and not guided by information about the actual data types, users that employ this compacted configuration are well-advised to not mix it with the usual collection-style configuration format for a given plugin parameter as the merged configuration likely doesn&#8217;t produce the intended result.</p>

<h2>Bean default properties</h2>

<p>We can take the idea of inlining configuration a little further. Have a look at this example configuration:</p>

<pre>&lt;resources&gt;
  &lt;resource&gt;
    &lt;directory&gt;src/foo&lt;/directory&gt;
    &lt;filtering&gt;true&lt;/filtering&gt;
  &lt;/resource&gt;
  &lt;resource&gt;src/bar&lt;/resource&gt;
&lt;/resources&gt;</pre>

<p>Looks odd at first, doesn&#8217;t it? Obviously, the <tt>&lt;resource&gt;</tt> element describes some complex structure, but the second <tt>&lt;resource&gt;</tt> element in the example consists just of a mere string. It&#8217;s not hard to guess that<tt>&lt;resource&gt;src/bar&lt;/resource&gt;</tt> could be a shorthand form of <tt>&lt;resource&gt;&lt;directory&gt;src/bar&lt;/directory&gt;&lt;/resource&gt;</tt> by assuming the <tt>&lt;directory&gt;</tt> element is the default/primary property of a <tt>&lt;resource&gt;</tt>. With the new plugin configurator, this is actually possible now.</p>

<p>To enable the feature, a plugin author would have to add a method called <tt>set()</tt> to the bean class in question:</p>

<pre>public class Resource
{

    private File directory;

    public void set( File directory )
    {
        this.directory = directory;
    }

...
}</pre>

<p>This <tt>set()</tt> method must be public, non-static and take a single argument; it may have a return value.</p>

<p>Besides saving users a few bits of XML, this feature can also be used to configure complex beans via system properties from the command line. Let&#8217;s say we have a plugin parameter like this:</p>

<pre>/** @parameter expression="${artifact}" */
Artifact artifact;</pre>

<p>Now further assuming the <tt>Artifact</tt> bean used here implements a nice <tt>set()</tt> method that is smart enough to parse a string into artifact coordinates, one could invoke the plugin directly via:</p>

<pre>mvn &lt;goal&gt; -Dartifact=org.apache.maven:maven-core:3.0</pre>

<p>Last but not least, the default property feature also enables a smooth upgrade path in case plugin parameters need to be changed from simple values to complex structures. Going back to the initial example with the <tt>&lt;resource&gt;</tt>elements, consider the plugin author originally didn&#8217;t anticipate the <tt>&lt;filtering&gt;</tt> element and designed the plugin parameter to be of type <tt>File[]</tt>.</p>

<p>With previous Maven versions, the only way to extend the plugin to support the<tt>&lt;filtering&gt;</tt> element is to deprecate the existing <tt>&lt;resources&gt;</tt> parameter and introduce a new parameter using the complex type or alternatively just break compatibility with existing POMs that use the old plugin version. Using the default property support, a plugin can change the parameter type from <tt>File[]</tt> to <tt>Resource[]</tt> without affecting existing users.</p>

<h2>Simpler configuration of properties parameter</h2>

<p>While <tt>java.util.Properties</tt> is just a concrete implementation of a <tt>Map</tt>, the configuration required for parameters of type <tt>Properties</tt> is structurally different from the configuration format for <tt>Map</tt> parameters. For the sake of consistency and conciseness, plugin parameters of type <tt>Properties</tt> can now also be configured like a <tt>Map</tt>, that is:</p>

<pre>&lt;properties&gt;
  &lt;key1&gt;value1&lt;/key1&gt;
  &lt;key2&gt;value2&lt;/key2&gt;
&lt;/properties&gt;</pre>

<h2>User-specified implementation class for map parameters</h2>

<p>Previous Maven versions always used a <tt>TreeMap</tt> to configure parameters of type <tt>Map</tt>. In other words, neither the user nor the plugin author had any control over the map implementation being used. Just like with the collections, the updated plugin configurator recognizes an optional implementation attribute:</p>

<pre>&lt;map implementation="java.util.LinkedHashMap"&gt;
  &lt;key&gt;value&lt;/key&gt;
&lt;/map&gt;</pre>

<p>In absence of both the attribute and a concrete implementation class in the parameter declaration, <tt>TreeMap</tt> continues to get used.</p>

<h2>Hexadecimal and octal numbers</h2>

<p>In some contexts, it&#8217;s more convenient to specify a number in hexadecimal or octal notation. To support this, plugin authors previously had to declare the corresponding plugin parameters as strings and do the conversion themselves. Now, it&#8217;s natively supported, using the prefix &#8220;0x&#8221; to denote hex notation and the prefix &#8220;0&#8243; to denote octal notation.</p>

<pre>&lt;rgb&gt;0xFF00C0&lt;/rgb&gt; &lt;!-- hex number --&gt;
&lt;perms&gt;0664&lt;/perms&gt; &lt;!-- octal number --&gt;</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.sonatype.com/people/2011/03/configuring-plugin-goals-in-maven-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maven 3 webinar recording now available</title>
		<link>http://www.sonatype.com/people/2010/10/maven-3-webinar-recording-now-available/</link>
		<comments>http://www.sonatype.com/people/2010/10/maven-3-webinar-recording-now-available/#comments</comments>
		<pubDate>Fri, 29 Oct 2010 11:00:24 +0000</pubDate>
		<dc:creator>hloney</dc:creator>
				<category><![CDATA[Sonatype]]></category>
		<category><![CDATA[Maven]]></category>
		<category><![CDATA[Maven 3]]></category>
		<category><![CDATA[webinar]]></category>

		<guid isPermaLink="false">http://www.sonatype.com/people/?p=6384</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/10/maven-3-webinar-recording-now-available/' addthis:title='Maven 3 webinar recording now available '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>If you missed Sonatype&#8217;s latest webinar on Maven 3.x: The Evolution of Enterprise Java Build Infrastructures, download the webinar recording here. Maven 3 is the best version of Maven yet. Maven 3 is faster, has been optimized for IDE use, and is fully backward compatible with Maven 2.  In this webinar, Jason van Zyl discusses [...]]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/10/maven-3-webinar-recording-now-available/' addthis:title='Maven 3 webinar recording now available '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p><!--dzoneZ=none-->If you missed Sonatype&#8217;s latest webinar on Maven 3.x: The Evolution of Enterprise Java Build Infrastructures, download the webinar recording <a href="https://sonatype.webex.com/ec0605lb/eventcenter/recording/recordAction.do?theAction=poprecord&amp;actname=%2Feventcenter%2Fframe%2Fg.do&amp;apiname=lsr.php&amp;renewticket=0&amp;renewticket=0&amp;actappname=ec0605lb&amp;entappname=url0107lb&amp;needFilter=false&amp;&amp;isurlact=true&amp;entactname=%2FnbrRecordingURL.do&amp;rID=46805542&amp;rKey=3f773d348b2df17b&amp;recordID=46805542&amp;rnd=3622772780&amp;siteurl=sonatype&amp;SP=EC&amp;AT=pb&amp;format=short" target="_blank">here</a>.</p>

<p>Maven 3 is the best version of Maven yet. Maven 3 is faster, has been  optimized for IDE use, and is fully backward compatible with Maven 2.  In this webinar,  Jason van Zyl discusses Maven 3, the future  of Java Build Infrastructures and the upcoming Sonatype Professional  suite.</p>

<p>For more from Sonatype including upcoming product releases, training sessions and webinars visit <a href="http://www.sonatype.com" target="_blank">www.sonatype.com</a>.</p>

<p><img class="alignnone" title="Sonatype - Transforming Software Development" src="https://docs.sonatype.com/download/attachments/31693030/sonatype_logo.jpg?version=1&amp;modificationDate=1284060037480" alt="" width="430" height="80" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sonatype.com/people/2010/10/maven-3-webinar-recording-now-available/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maven 3 webinar next week</title>
		<link>http://www.sonatype.com/people/2010/10/maven-3-webinar-next-week/</link>
		<comments>http://www.sonatype.com/people/2010/10/maven-3-webinar-next-week/#comments</comments>
		<pubDate>Fri, 22 Oct 2010 15:45:40 +0000</pubDate>
		<dc:creator>hloney</dc:creator>
				<category><![CDATA[Maven]]></category>
		<category><![CDATA[Sonatype]]></category>
		<category><![CDATA[Maven 3]]></category>
		<category><![CDATA[webinar]]></category>

		<guid isPermaLink="false">http://www.sonatype.com/people/?p=6352</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/10/maven-3-webinar-next-week/' addthis:title='Maven 3 webinar next week '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>Sonatype will be hosting a free webinar on Maven 3 next week.  Maven 3 is the best version of Maven yet. Maven 3 is faster, has been optimized for IDE use, and is fully backward compatible with Maven 2. Please join us as Jason van Zyl discusses Maven 3, the future of Java Build Infrastructures. [...]]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/10/maven-3-webinar-next-week/' addthis:title='Maven 3 webinar next week '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p><!--dzoneZ=none--><a href="http://www.sonatype.com/people/wp-content/uploads/2009/10/maven.png"><img class="alignright size-full wp-image-3145" title="maven" src="http://www.sonatype.com/people/wp-content/uploads/2009/10/maven.png" alt="" width="250" height="72" /></a>Sonatype will be hosting a free webinar on Maven 3 next week.  Maven 3 is the best version of Maven yet. Maven 3 is faster, has been optimized for IDE use, and is fully backward compatible with Maven 2. Please join us as Jason van Zyl discusses Maven 3, the future of Java Build Infrastructures.</p>

<p>Click <a href="http://www.sonatype.com/maven-3.x-the-evolution-of-enterprise-java-build-infrastructures.html" target="_blank">here</a> to register for this webinar.</p>

<p><strong>Date:</strong> Thursday, October 28, 2010
<strong>Time:</strong></p>

<ul>
    <li>6:00 am Pacific Daylight Time (San Francisco, <a href="gmt-07:00).html">GMT-07:00)</a></li>
    <li>9:00 am Eastern Daylight Time (New York, <a href="gmt-04:00).html">GMT-04:00)</a></li>
    <li>2:00 pm Western European Summer Time (London, <a href="gmt+01:00).html">GMT+01:00)</a></li>
    <li>3:00 pm Europe Summer Time (Amsterdam, <a href="gmt+02:00).html">GMT+02:00)</a></li>
</ul>

<p><strong>Estimated duration:</strong> 45 minutes</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sonatype.com/people/2010/10/maven-3-webinar-next-week/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maven 3 and Sonar</title>
		<link>http://www.sonatype.com/people/2010/08/maven-3-and-sonar/</link>
		<comments>http://www.sonatype.com/people/2010/08/maven-3-and-sonar/#comments</comments>
		<pubDate>Mon, 16 Aug 2010 12:00:50 +0000</pubDate>
		<dc:creator>Anders Hammar</dc:creator>
				<category><![CDATA[Sonatype]]></category>
		<category><![CDATA[Maven]]></category>
		<category><![CDATA[Maven 3]]></category>
		<category><![CDATA[Sonar]]></category>

		<guid isPermaLink="false">http://www.sonatype.com/people/?p=6020</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/08/maven-3-and-sonar/' addthis:title='Maven 3 and Sonar '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>Another step towards a final release of Maven 3.0 was made the other day when version 3.0-beta-2 was released. I’ve been using Maven 3 since its alpha days, and despite the alpha/beta moniker, I find it to be superior to any Maven 2.x version. If you are starting a new project, I strongly recommend using [...]]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/08/maven-3-and-sonar/' addthis:title='Maven 3 and Sonar '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p><a href="http://www.sonatype.com/people/wp-content/uploads/2009/10/maven.png"><img class="alignright size-full wp-image-3145" title="maven" src="http://www.sonatype.com/people/wp-content/uploads/2009/10/maven.png" alt="" width="250" height="72" /></a>Another step towards a final release of Maven 3.0 was made the other day when version <a href="http://maven.apache.org/docs/3.0-beta-2/release-notes.html" target="_blank">3.0-beta-2 </a>was released.  I’ve been using Maven 3 since its alpha days, and despite the  alpha/beta moniker, <a href="http://www.sonatype.com/people/2009/11/maven-30-new-and-improved-formula/" target="_blank">I find it to be superior to any Maven 2.x  version</a>. If you are starting a new project, I strongly recommend using Maven 3.</p>

<p>That being said,  in the complete development environment there are a few missing  pieces when working with Maven 3. One of these is getting Sonar to  work with Maven 3, which had not been possible until the latest version  of Sonar was released.</p>

<p>This post will explain how to get Maven 3 and Sonar to work together.</p>

<p><span id="more-6020"></span>
To  get started, the first thing you must do is install Sonar 2.2 and  Maven 3.0-beta-1 or later. No extra configuration of Sonar is required  for Maven 3, and <a href="http://docs.codehaus.org/display/SONAR/Install+Sonar#InstallSonar-Step5ConfigureMaven2" target="_blank">the same configuration of properties in Maven also  applies</a>. Please note that the URL for the Sonar server &#8212; sonar.host.url &#8212; must not end with a slash character.</p>

<p>The  difference when using Maven 3 lies in the Maven plugin. Currently,  the plugin at <a href="org.codehaus.mojo:sonar-maven-plugin:1.0-beta-1" target="_blank">Codehaus Mojo</a> doesn’t work with  Maven 3, so you need to use the one at the <a href="org.codehaus.sonar:sonar-maven3-plugin:2.2" target="_blank">Sonar project</a> instead.</p>

<p>Now, in your Maven  project, execute the command below.  Until  the Sonar Maven plugin at Codehaus Mojo is updated with Maven 3  support, this is the command to use:</p>

<p><strong>mvn org.codehaus.sonar:sonar-maven3-plugin:2.2:sonar</strong></p>

<p>Your project should now be analyzed and the result uploaded to Sonar.</p>

<p>One thing to be aware of is that  you need to align the version of sonar-maven3-plugin with the version of  Sonar that is installed. When you upgrade Sonar, you need to change the  version on the Maven side as well.</p>

<p>To view the progress of Maven 3 support in the plugin at Codehaus Mojo, follow <a href="http://jira.codehaus.org/browse/MOJO-1545" target="_blank">MOJO-1545</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sonatype.com/people/2010/08/maven-3-and-sonar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Listen to Brian Fox discuss Maven 3 on BasementCoders.com</title>
		<link>http://www.sonatype.com/people/2010/08/listen-to-brian-fox-discuss-maven-3-on-basementcoders-com/</link>
		<comments>http://www.sonatype.com/people/2010/08/listen-to-brian-fox-discuss-maven-3-on-basementcoders-com/#comments</comments>
		<pubDate>Tue, 03 Aug 2010 13:00:06 +0000</pubDate>
		<dc:creator>Tim O'Brien</dc:creator>
				<category><![CDATA[Community]]></category>
		<category><![CDATA[Maven]]></category>
		<category><![CDATA[Apache Maven]]></category>
		<category><![CDATA[Brian Fox]]></category>
		<category><![CDATA[Maven 3]]></category>

		<guid isPermaLink="false">http://www.sonatype.com/people/?p=5893</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/08/listen-to-brian-fox-discuss-maven-3-on-basementcoders-com/' addthis:title='Listen to Brian Fox discuss Maven 3 on BasementCoders.com '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>Craig Tataryn of BasementCoders.com interviewed Brian Fox about the upcoming release of Maven 3. From Basementcoders.com: &#8220;With the Maven 3 betas being out and packing a tonne of cool features we decided that we needed to sit down and talk with someone in the know. Enter Brian Fox, PMC Chair Apache Maven and VP of [...]]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/08/listen-to-brian-fox-discuss-maven-3-on-basementcoders-com/' addthis:title='Listen to Brian Fox discuss Maven 3 on BasementCoders.com '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p><a href="http://www.sonatype.com/people/wp-content/uploads/2009/10/maven.png"><img class="alignright size-full wp-image-3145" title="maven" src="http://www.sonatype.com/people/wp-content/uploads/2009/10/maven.png" alt="" width="250" height="72" /></a>Craig Tataryn of BasementCoders.com <a href="http://www.dzone.com/links/r/episode_13_maven_3_interview_with_pmc_chair_brian.html">interviewed Brian Fox about the upcoming release of Maven 3</a>.  From Basementcoders.com:</p>

<blockquote>&#8220;With the Maven 3 betas being out and packing a tonne of cool features we decided that we needed to sit down and talk with someone in the know. Enter Brian Fox, PMC Chair Apache Maven and VP of Engineering at Sonatype (the fellows who make Maven Repositories manageable via their Nexus product).&#8221;</blockquote>

<p>This interview touches upon Brian&#8217;s background in build management and developer infrastructure, and how Brian started to use Maven and became involved in the Apache Maven project.   You will also hear Brian discuss the history of Maven, the motivations behind the project, some comparisons between Maven and Ant, and new features planned for the Maven 3 release.</p>

<p>To listen to the full interview, <a href="http://www.dzone.com/links/r/episode_13_maven_3_interview_with_pmc_chair_brian.html">click here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sonatype.com/people/2010/08/listen-to-brian-fox-discuss-maven-3-on-basementcoders-com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Future of Maven</title>
		<link>http://www.sonatype.com/people/2010/03/the-future-of-maven/</link>
		<comments>http://www.sonatype.com/people/2010/03/the-future-of-maven/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 14:55:49 +0000</pubDate>
		<dc:creator>hloney</dc:creator>
				<category><![CDATA[Maven]]></category>
		<category><![CDATA[m2eclipse]]></category>
		<category><![CDATA[Maven 3]]></category>
		<category><![CDATA[Nexus]]></category>
		<category><![CDATA[Polyglot Maven]]></category>
		<category><![CDATA[pom]]></category>
		<category><![CDATA[Sonatype]]></category>
		<category><![CDATA[Tycho]]></category>

		<guid isPermaLink="false">http://www.sonatype.com/people/?p=4736</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/03/the-future-of-maven/' addthis:title='The Future of Maven '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>JAXenter talked to Sonatype&#8217;s Jason van Zyl about the future of Maven, and what users can expect when migrating from Maven 2 to Maven 3.  In this interview, van Zyl and Sonatype&#8217;s Brian Fox outline Maven 3, it&#8217;s backward compatibility with Maven 2, the introduction of POM mixins, and repository management with Nexus. The primary [...]]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/03/the-future-of-maven/' addthis:title='The Future of Maven '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p><!--dzoneZ=none--><a href="http://jaxenter.com/" target="_blank"><img class="alignright size-full wp-image-1488" title="maven" src="http://www.sonatype.com/people/wp-content/uploads/2009/01/maven.png" alt="" width="180" height="77" />JAXenter</a> talked to Sonatype&#8217;s Jason van Zyl about the future of Maven, and what users can expect when migrating from Maven 2 to Maven 3.  In this interview, van Zyl and Sonatype&#8217;s Brian Fox outline Maven 3, it&#8217;s backward compatibility with Maven 2, the introduction of POM mixins, and repository management with Nexus.</p>

<blockquote>The primary goal is a way forward for all Maven users, efficient  embedding, increased performance, synchronizing the Maven 3.0 code base  with m2eclipse, and adding extension points for tools like Tycho, <a href="http://polyglot.sonatype.org/" target="_blank">Polyglot Maven</a>, and the <a href="http://shell.sonatype.org/" target="_blank">Maven Shell</a>.</blockquote>

<p><a href="http://jaxenter.com/maven-3-0-the-future-of-maven-10580.html" target="_blank">To read the full JAXenter interview, click here.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sonatype.com/people/2010/03/the-future-of-maven/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maven 3 Presentation at Devnexus 2010 in Atlanta</title>
		<link>http://www.sonatype.com/people/2010/02/maven-3-presentation-at-devnexus-2010-in-atlanta/</link>
		<comments>http://www.sonatype.com/people/2010/02/maven-3-presentation-at-devnexus-2010-in-atlanta/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 19:10:58 +0000</pubDate>
		<dc:creator>hloney</dc:creator>
				<category><![CDATA[Sonatype]]></category>
		<category><![CDATA[Devnexus 2010]]></category>
		<category><![CDATA[Hudson]]></category>
		<category><![CDATA[m2eclipse]]></category>
		<category><![CDATA[Maven]]></category>
		<category><![CDATA[Maven 3]]></category>
		<category><![CDATA[Nexus]]></category>

		<guid isPermaLink="false">http://www.sonatype.com/people/?p=4516</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/02/maven-3-presentation-at-devnexus-2010-in-atlanta/' addthis:title='Maven 3 Presentation at Devnexus 2010 in Atlanta '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>Devnexus 2010 is the annual Professional Developer Conference, and is being held in Atlanta on March 8 and 9.  Sonatype&#8217;s Jason van Zyl will be in Atlanta on March 8 to give a presentation on Maven 3 and Next Generation Development Infrastructure.  The presentation will cover the future of Maven, Maven 3, the release of [...]]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://www.sonatype.com/people/2010/02/maven-3-presentation-at-devnexus-2010-in-atlanta/' addthis:title='Maven 3 Presentation at Devnexus 2010 in Atlanta '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p><!--dzoneZ=none--><a href="http://www.devnexus.com/" target="_blank"></a></p>

<p><a href="http://www.sonatype.com/people/wp-content/uploads/2008/11/sonatype-logo.png"><img class="size-full wp-image-804 alignright" title="sonatype-logo" src="http://www.sonatype.com/people/wp-content/uploads/2008/11/sonatype-logo.png" alt="" width="203" height="63" /></a></p>

<p><a href="http://www.devnexus.com/" target="_blank">Devnexus 2010</a> is the annual Professional Developer Conference, and is being held in Atlanta on March 8 and 9.  Sonatype&#8217;s Jason van Zyl will be in Atlanta on March 8 to give a presentation on Maven 3 and Next Generation Development Infrastructure.  The presentation will cover the future of Maven, Maven 3, the release of m2eclipse 1.0, and the move towards a standardized development stack that includes tools like Maven, Hudson, m2eclipse, and Nexus.</p>

<blockquote>This discussion will focus not only on the tools individually, but how they can work together to create a best practices approach to building and delivering your software in your organization.</blockquote>

<p>For more information on Devnexus 2010 visit the conference website.  Devnexus 2010 is sponsored by the <a href="http://www.ajug.org/confluence/display/AJUG/Home" target="_blank">Atlanta Java User Group</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sonatype.com/people/2010/02/maven-3-presentation-at-devnexus-2010-in-atlanta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

