<?xml version="1.0" encoding='utf-8'?>
<!-- 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
-->
<?xml-stylesheet type="text/xsl" href="https://rollerweblogger.org/roller-ui/styles/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom">
    <title type="html">Blogging Roller</title>
    <subtitle type="html">Dave Johnson on open web technologies, social software and software development</subtitle>
    <id>https://rollerweblogger.org/roller/feed/entries/atom</id>
        <link rel="self" type="application/atom+xml" href="https://rollerweblogger.org/roller/feed/entries/atom?tags=maven" />
    <link rel="alternate" type="text/html" href="https://rollerweblogger.org/roller/" />
    <updated>2026-05-18T08:23:39+00:00</updated>
    <generator uri="http://roller.apache.org" version="6.1.5">Apache Roller</generator>
    <entry>
        <id>https://rollerweblogger.org/roller/entry/what_39_s_new_in</id>
        <title type="html">Maven 3.0: 50% to 400% speed improvement?</title>
        <author><name>Dave Johnson</name></author>
        <link rel="alternate" type="text/html" href="https://rollerweblogger.org/roller/entry/what_39_s_new_in"/>
        <published>2010-05-26T08:25:10+00:00</published>
        <updated>2010-05-26T15:30:14+00:00</updated> 
        <category term="Java" label="Java" />
        <category term="maven" scheme="http://roller.apache.org/ns/tags/" />
        <content type="html">&lt;p&gt;A drop-in replacement with 50% to 400% speed improvement? That sounds too good to be true.&lt;/p&gt;

&lt;blockquote&gt;
&lt;a href=&quot;http://raibledesigns.com/rd/entry/what_s_new_in_maven&quot;&gt;Matt Raible&lt;/a&gt;: The main improvement in Maven 3 is &lt;em&gt;speed&lt;/em&gt;. It&amp;#39;s been performance tuned to be 50% to 400% faster. Benchmarks (guaranteed by integration tests) include better: Disk I/O, Network I/O, CPU and Memory. Another new feature is extensibility so Maven is a better library rather than just a command-line tool. Now there&amp;#39;s a library and APIs that you can use to do the things that Maven does. Plexus has been replaced with Guice and it&amp;#39;s now much easier to embed Maven (&lt;a href=&quot;http://polyglot.sonatype.org&quot;&gt;Polyglot Maven&lt;/a&gt; and &lt;a href=&quot;http://shell.sonatype.org/&quot;&gt;Maven Shell&lt;/a&gt; are examples of this).
&lt;/blockquote&gt;

&lt;p&gt;Apparently it is not entirely true, at least not yet (Maven 3.0 is still in beta). I tried switching to Maven 3 for the Roller 5 build and hit several build errors related to class-loading and JPA byte-code enhancement.&lt;/p&gt;
</content>
    </entry>
    <entry>
        <id>https://rollerweblogger.org/roller/entry/maven_support_in_ides</id>
        <title type="html">Maven support in IDEs</title>
        <author><name>Dave Johnson</name></author>
        <link rel="alternate" type="text/html" href="https://rollerweblogger.org/roller/entry/maven_support_in_ides"/>
        <published>2010-03-23T10:11:14+00:00</published>
        <updated>2010-04-27T03:20:24+00:00</updated> 
        <category term="Java" label="Java" />
        <category term="eclipse" scheme="http://roller.apache.org/ns/tags/" />
        <category term="idea" scheme="http://roller.apache.org/ns/tags/" />
        <category term="maven" scheme="http://roller.apache.org/ns/tags/" />
        <category term="netbeans" scheme="http://roller.apache.org/ns/tags/" />
        <content type="html">&lt;a href=&quot;http://maven.apache.org&quot;&gt;
&lt;img style=&quot;padding:4px;align:left;&quot; src=&quot;http://rollerweblogger.org/roller/mediaresource/f20c4914-80dc-48f5-a8d1-2efa3d89eb07&quot; alt=&quot;Maven Logo&quot;&gt;
&lt;/a&gt;
 
&lt;p&gt;I&amp;#39;ve been switching around between the Eclipse, Netbeans and IntelliJ IDEs at home and at work. I&amp;#39;ve found that fiddling around with multiple IDE specific project configurations and launchers and class-paths is no fun at all. That&amp;#39;s one of the reasons I got interested in Maven. Yes, Maven is a build-system but it&amp;#39;s also a sort of IDE portability solution. Maven projects can be loaded right into all the major Java IDEs as you can see in the screenshots below. IDEs can find your sources, resources, dependencies and via the Maven Jetty plugin even run your Java webapps from the IDE -- things that are not possible if you&amp;#39;re using a custom Ant build-script as we were doing before with Roller.&lt;/p&gt;

&lt;p&gt;Here some screenshots that show the various Maven IDE plugins and their dependency graph feature.&lt;/p&gt;

&lt;b&gt;Roller / Maven Eclipse 3.5 / &lt;a href=&quot;http://m2eclipse.sonatype.org/&quot;&gt;M2Eclipse&lt;/a&gt;&lt;/b&gt;
&lt;p&gt;Here&amp;#39;s Roller loaded into Eclipse via the Maven M2 Eclipse plugin.&lt;p&gt;
&lt;p&gt;
&lt;a href=&quot;http://lh4.ggpht.com/_gRyDsh__fr0/S5JXdBQRLNI/AAAAAAAAAdE/nlZukqREyjI/e3-roller-maven.png&quot; class=&quot;slbLink&quot;&gt;&amp;lt;img src=&amp;quot;http://lh4.ggpht.com/_gRyDsh__fr0/S5JXdBQRLNI/AAAAAAAAAdE/nlZukqREyjI/s288/e3-roller-maven.png&amp;quot; 
alt=&amp;quot;Roller / Maven Eclipse 3.5 / M2Eclipse&amp;quot; /&amp;gt;
&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;By the way, if you want detailed instructions for getting Roller 5 up and running in Eclipse with the Eclipse Web tooling, check-out Harald Wellman&amp;#39;s helpful blog on the topic: &lt;a href=&quot;http://hwellmann.blogspot.com/2010/02/setting-up-eclipse-for-roller.html&quot;&gt;Setting up Eclipse for Roller&lt;/a&gt;.&lt;/p&gt;

&lt;b&gt;Roller / &lt;a href=&quot;http://wiki.netbeans.org/NewAndNoteworthyNB68#Maven&quot;&gt;Maven in Netbeans 6.8&lt;/a&gt;&lt;/b&gt;
&lt;p&gt;Here&amp;#39;s Roller loaded into Netbeans as a Maven project.&lt;/p&gt;
&lt;p&gt;
&lt;a href=&quot;http://lh5.ggpht.com/_gRyDsh__fr0/S5JYhJYGkDI/AAAAAAAAAdM/9yPXRxlEkGQ/nb-roller-maven.png&quot; class=&quot;slbLink&quot;&gt;&lt;img src=&quot;http://lh5.ggpht.com/_gRyDsh__fr0/S5JYhJYGkDI/AAAAAAAAAdM/9yPXRxlEkGQ/s288/nb-roller-maven.png&quot; alt=&quot;Roller / Maven in Netbeans 6.8&quot;&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;b&gt;Roller / &lt;a href=&quot;http://www.jetbrains.com/idea/features/ant_maven.html&quot;&gt;Maven in IDEA IntelliJ 9.0&lt;/a&gt;&lt;/b&gt;
&lt;p&gt;And here&amp;#39;s Roller loaded into IDEA IntelliJ as a Maven project.&lt;/p&gt;
&lt;p&gt;
&lt;a href=&quot;http://lh5.ggpht.com/_gRyDsh__fr0/S5Jb_Rpta7I/AAAAAAAAAdg/uhIDzTT76n0/ij-roller-maven.png&quot; class=&quot;slbLink&quot;&gt;&lt;img src=&quot;http://lh5.ggpht.com/_gRyDsh__fr0/S5Jb_Rpta7I/AAAAAAAAAdg/uhIDzTT76n0/s288/ij-roller-maven.png&quot; alt=&quot;Roller / Maven in IDEA IntelliJ 9.0&quot;&gt;
&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;I&amp;#39;m not sure which I prefer yet.&lt;/p&gt;
&lt;/p&gt;&lt;/p&gt;</content>
    </entry>
    <entry>
        <id>https://rollerweblogger.org/roller/entry/roller_built_with_maven</id>
        <title type="html">Built with Maven</title>
        <author><name>Dave Johnson</name></author>
        <link rel="alternate" type="text/html" href="https://rollerweblogger.org/roller/entry/roller_built_with_maven"/>
        <published>2010-03-14T09:47:26+00:00</published>
        <updated>2010-04-27T03:22:41+00:00</updated> 
        <category term="Roller" label="Roller" />
        <category term="ant" scheme="http://roller.apache.org/ns/tags/" />
        <category term="java" scheme="http://roller.apache.org/ns/tags/" />
        <category term="maven" scheme="http://roller.apache.org/ns/tags/" />
        <content type="html">&lt;a href=&quot;http://maven.apache.org&quot;&gt;
&lt;img style=&quot;padding:4px;align:left;&quot; src=&quot;http://rollerweblogger.org/roller/mediaresource/f20c4914-80dc-48f5-a8d1-2efa3d89eb07&quot; alt=&quot;Maven Logo&quot;&gt;
&lt;/a&gt;

&lt;p&gt;I was a &lt;a href=&quot;http://maven.apache.org&quot;&gt;Maven&lt;/a&gt; hater and resisted it for a long time but over the years Maven has gotten much better, it&amp;#39;s well supported in IDEs and as far as I can tell, Maven has replaced Ant as the de facto build system for Java projects. If you want new developers be able to easily build, debug and run your code via command or their favorite IDE then Maven is the way to go, and that&amp;#39;s especially true for open source projects like Roller.&lt;/p&gt;

&lt;p&gt;That&amp;#39;s why I spent a couple of weekends learning Maven and converting Roller&amp;#39;s build process from Ant to Maven (&lt;a href=&quot;https://issues.apache.org/jira/browse/ROL-1849&quot;&gt;ROL-1849&lt;/a&gt;). The process of conversion wasn&amp;#39;t too difficult. Getting dependencies under control was a pain, but it believe it will be a one time pain and a worthwhile one. What took the most time was figuring out how to get Maven to start Derby, create the Roller tables and then run Roller&amp;#39;s JUnit tests. Also, getting Maven&amp;#39;s Jetty plugin setup to run Roller was a little tricky but hopefully also a one-time pain. The result is that Roller now uses a standard and well known directory structure, dependencies are managed and it&amp;#39;s easier for developers to get started with the codebase.&lt;/p&gt;

&lt;p&gt;If you have Maven and Subversion installed on your computer then these commands will fetch the Roller source code, compile the code, run all JUnit tests and then build the Roller webapp:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;
   svn co https://svn.apache.org/repos/asf/roller/trunk roller_trunk
   cd roller_trunk 
   mvn install
&lt;/code&gt;
&lt;/pre&gt;

&lt;p&gt;And once all that is done, the following commands will start the Jetty app server, start the Derby database and start Roller at http://localhost:8080/roller, ready for testing, experimentation, etc.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;
   cd weblogger-web
   mvn jetty:run-war
&lt;/code&gt;
&lt;/pre&gt;

&lt;p&gt;I think that&amp;#39;s pretty damn useful.&lt;/p&gt;

&lt;p&gt;Here are some articles/links that influenced my thinking on Maven recently:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.symphonious.net/2010/01/11/comparing-build-systems/&quot;&gt;Comparing Build Systems&lt;/a&gt; - Adrian Sutton concludes that Maven is too much work but &amp;quot;the consistency in how a project is built that the Maven project has brought to the Java would is absolutely revolutionary&amp;quot;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://blogs.atlassian.com/developer/2008/02/maven_in_our_development_proce.html&quot;&gt;Maven in our development process&lt;/a&gt; - Sherali Karimov explains how Atlassian and says the need for Maven training is &amp;quot;the most important and most overlooked issue of all.&amp;quot;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.sonatype.com/&quot;&gt;Sonatype&lt;/a&gt; - The Maven Company. Founded in 2008 by Jason van Zyl, the creator of Maven. Offers training, support and the Nexus Professional repo manager.&lt;/li&gt;
&lt;/ul&gt;
</content>
    </entry>
    <entry>
        <id>https://rollerweblogger.org/roller/entry/latest_links38</id>
        <title type="html">Latest Links: open source, social networking and etc.</title>
        <author><name>Dave Johnson</name></author>
        <link rel="alternate" type="text/html" href="https://rollerweblogger.org/roller/entry/latest_links38"/>
        <published>2008-03-23T14:00:05+00:00</published>
        <updated>2008-03-24T04:29:31+00:00</updated> 
        <category term="Links" label="Links" />
        <category term="java" scheme="http://roller.apache.org/ns/tags/" />
        <category term="maven" scheme="http://roller.apache.org/ns/tags/" />
        <category term="opensource" scheme="http://roller.apache.org/ns/tags/" />
        <category term="socialnetworking" scheme="http://roller.apache.org/ns/tags/" />
        <content type="html">&lt;ul&gt;

&lt;li&gt;&lt;a href=&quot;http://cgwalters.livejournal.com/14310.html&quot;&gt;cgwalters - A software tsunami&lt;/a&gt;&lt;br&gt;&amp;quot;OpenJDK is finally changing that. Now, you can write a library using Java, it can be sensibly integrated with Free operating systems&amp;quot;&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;http://www.regdeveloper.co.uk/2008/01/11/ibm_project_zero_commercial/&quot;&gt;Countdown for IBM Project Zero | Reg Developer&lt;/a&gt;&lt;br&gt;&amp;quot;bringing the feedback typical of an open source project without any of the obligations to give the resulting technology back to the community.&amp;quot;&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;http://www.regdeveloper.co.uk/2008/03/21/jcp_smoke_filled_rooms/&quot;&gt;Soviet-era JCP needs change, concedes top commissar | Reg Developer&lt;/a&gt;&lt;br&gt; Patrick Curran has reached a firm conclusion on his organization: &amp;quot;We have to change,&amp;quot; he said. &amp;quot;No more smoke-filled rooms.&amp;quot;&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;http://blogs.gnome.org/gman/2008/03/19/why-our-governance-doesnt-work/&quot;&gt;Glynn Foster: Why Our Governance Doesnâ&#128;&#153;t Work&lt;/a&gt;&lt;br&gt;&amp;quot;Thereâ&#128;&#153;s no substitute to JFDI - or improving our governance model so that it doesnâ&#128;&#153;t get in the way of suitably motivated people who want to contribute.&amp;quot;&lt;/li&gt;

&lt;br&gt;

&lt;li&gt;&lt;a href=&quot;http://skypejournal.com/blog/2008/03/skype_and_the_social_network_s.html&quot;&gt;Skype Journal: Skype and the Social Network Stack&lt;/a&gt;&lt;br&gt;&amp;quot;We need a new stack to sort out social media&amp;#39;s plumbing&amp;quot;&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;http://chris.pirillo.com/2008/03/23/an-open-letter-to-american-express/&quot;&gt;An Open Letter to American Express ~ Chris Pirillo&lt;/a&gt;&lt;br&gt; &amp;quot;You know, for all the buzz that FaceBook getsâ&#128;¦ I get far more value out of Twitter.&amp;quot;&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;http://code.google.com/p/buddypress/&quot;&gt;buddypress - Google Code&lt;/a&gt;&lt;br&gt;&amp;quot;suite of plugins that will completely transform a vanilla installation of Wordpress MU into a fully functional social network platform&amp;quot;&lt;/li&gt;

&lt;br&gt;

&lt;li&gt;&lt;a href=&quot;http://apsblog.burtongroup.com/2008/03/looking-for-soa.html&quot;&gt;App Platform Strategies Blog: Looking for SOA success stories&lt;/a&gt;&lt;br&gt;&amp;quot;SOA is not working in most organizations&amp;quot;&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;http://www.olpcnews.com/software/windows/xp_on_the_xo_in_60_days.html&quot;&gt;OLPC News: Negroponte Says XP on XO in 60 Days&lt;/a&gt;&lt;br&gt;&amp;quot;the end of a dream&amp;quot;. &lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;http://blogs.atlassian.com/developer/2008/03/maven_in_our_development_process_part_4_remaining_issues.html&quot;&gt;Atlassian Dev Blog - Maven in our development process. Part 4.&lt;/a&gt;&lt;br&gt;&amp;quot;Maven users need training.&amp;quot;&lt;/li&gt;

&lt;/ul&gt;


</content>
    </entry>
</feed>

