Skip to main content

SwingX going Maven ... maybe

Posted by rah003 on July 26, 2010 at 10:35 PM PDT

 I've just committed mavenized version of swingx under the swingx-r3734-mavenized branch.

If you know nothing about maven here's the basic:

  • download and install (unzip) maven from
  • you should not need to configure anything apart from geting maven/bin on your path so you can run maven
  • to build swingx you need to run "mvn install" or "mvn clean install"
  • to skip the tests run the above with "-Dmaven.test.skip=true"
  • to produce html report for the test run "mvn surefire-report:report" instead
  • to open the project in IDE you should be able to import it directly with NetBeans, and you might need m2eclipse plugin for eclipse
  • the source location changed a bit (swingx-core/src/main/java, swingx-core/src/test/java, swingx-beaninfo/src/main/java)
  • java and non java project files are now separated (.../java vs. .../resources)
  • after running the build, jar files can be found in the "target" directory of each module

I was under the impression that we semi agreed to move the project to maven based build while ago, but in case it was just in my head here are few pros:

  • cleaner structure
  • more plugins and better automation of library management
  • simpler releases (and upload to central repository)
  • possibility to provide release candidate builds and promote those when passing the community vote (with nexus)
  • open ways to modularization and intra project dependency management (we can break release into tiny core, graphigs-util, tree/table components, date/cal components, layout components, etc allowing everybody to download only what needed) and have dependency checks at compile time already.
  • lower maintenance overhead then ant
  • possibility to deploy snapshots to the maven repo and have people test fixes without having to manually download specific builds

If you are going to play with that branch, there are 4 tests failing currently (at least on my mac) ... feel free to fix them and commit those fixes on the branch or provide the patch in issues tracker :D

JXTreeTableUnitTest 2x
BasicSearchFieldUITest 1x
AutoCompleteDecoratorTest 1x


In case I didn't deliver the point yet - this branch is supposed to be base for the discussion whether we should move to maven and work more on the modularization or not ... I'm not imposing this on anyone.

If/when we agree to go this way I'll commit this on the trunk and start breaking down the components in separate modules.

The above is cross posted to the forum and on the blogs to get more coverage. Please keep the discussion on the forum. Thanks.



Related Topics >>