Last updated March 14, 2010 13:10, by Fabrizio Giudici

NetBeans Platform Wrapper Repository

The NetBeans Platform Wapper Repository (NB PoWeR) is an experimental approach to creare a Maven repository of NBM wrapper modules for some commonly used open source libraries. The idea is to have artifacts that are ready to be included in a custom platform by just declaring their dependencies in a Maven pom.

The project is still experimental but is now open to third parties' contributions The idea is to move through this sequence of phases:

  1. The project has been initiated by Fabrizio Giudici, who's got a number of Platform based projects. In Phase One, all the existing wrappers from these projects have been moved to NB PoWeR. For the sake of continuity, the currently used version were imported (they were not necessarily the most recent version of each library) and existing incongruousness in the naming schemata were not corrected. This first phase was performed mostly manually terminated when all the required wrappers were imported and the applications that use them worked correctly.
  1. In Phase Two, a review of name schemata and other related issues is being performed, probably with the intervention of other people. A number of issues about the effective capability of reusing a .NBM will be addressed in this phase.
  1. In Phase Three, if everything goes fine, the project will be opened and become useful for people.

Currently, we are running Phase Two.

Artifact names

All artifacts are being standardized on the "most important package name" convention.

Please note that the com.kenai.nbpwr groupId could be changed when the project enters Phase Three. The presence of artifacts in the Central Repo, though, guarantees that you can reliably depend on them.

In Phase One a different name scheme for artifacts was used.

Version names

It is necessary to add a further version identifier to the original artifact, since one might want to update the NBPWR corresponing resource because a bug or an improvement (for instance, because of the NBM metadata). In order to comply with the version scheme conventions of Maven, that makes it possible for the tool to apply some heuristics when resolving dependencies, the additional id is in the form -timestamp. For instance, SwingX 1.6 can be represented with version 1.6-201002241238.

The choice of the timestamp, furthermore, make it possible to clearly distinguish the original library version.

Available artifacts in the Maven Central Repository

The following artifacts are available in the Central Repository, so you just need to reference them in your POM. Remember that the groupId is always com.kenai.nbpwr.

library version original library coordinates artifactId
Animation Timing 1.0 net.java.dev.timingframework:timingframework org-jdesktop-animation-timing
Apache Batik 1.7 batik:batik-* (multiple) org-apache-batik-all
Apache Commons DBCP 1.2.2 commons-dbcp:commons-dbcp org-apache-commons-dbcp
Apache Commons IO 1.3.1 commons-io:commons-io org-apache-commons-io
Apache Commons Logging 1.0.3 commons-logging:commons-logging org-apache-commons-logging
Apache Commons Pool 1.4 commons-pool:commons-pool org-apache-commons-pool
Apache Derby 10.4.1.3 org.apache.derby:derby org-apache-derby
ASM 1.5.3 asm:asm, asm:asm-attrs org-objectweb-asm
CGLIB 2.1.3 cglib:cglib net-sf-cglib
FindBugs Annotations 1.3.2 net.sourceforge.findbugs:annotations edu-umd-cs-findbugs-annotations
Hibernate (with Derby dependency) (**) 3.2.6 org.hibernate:hibernate, org.hibernate:hibernate-entitymanager (3.3.2.GA), org.hibernate:hibernate-annotations (3.3.1.GA) org-hibernate-all-derby
Javassist 3.7.ga jboss:javassist javassist
JDOM 1.0 jdom:jdom org-jdom
JempBox 0.2.0 org.jempbox:jempbox org-jempbox-xmp
JGoodies Forms 1.2.1 com.jgoodies:forms com-jgoodies-forms
JHLabs Filters 2.0.235 com.jhlabs:filters com-jhlabs-filters
JPA 1.0 javax.persistence:persistence-api javax-persistence
JSR 305 1.3.7 com.google.code.findbugs:jsr305 javax-annotation
JSR 330 1 javax.inject:javax.inject javax-inject
JTA 1.0.1B javax.transaction:jta javax-transaction
JUnit 4.7 junit:junit org-junit
MacWidgets 0.9.5 com.explodingpixels:mac_widgets com-explodingpixels-macwidgets
Metadata Extractor 2.4.0-beta-1 com.drewnoakes:metadata-extractor com-drew-metadata
Rome 1.0 rome:rome com-sun-syndication-feed
SLF4J (*) 1.5.11 org.slf4j:slf4j-api, org.slf4j:slf4j-jdk14 org-slf4j-jdk14
SwingX 1.6 org.swinglabs:swingx org-jdesktop-swingx
SwingX-WS 1.0 org.swinglabs:swingx-ws org-jdesktop-swingx-ws

(*) Includes the j.u.l v4 adapter; the NBM codeNameBase is org.slf4j, so it can be replaced by another implementation.

(**) Includes a dependency to Derby. There are pending issues to have Hibernate see a JDBC database in the NetBeans Platform context, so to use Hibernate with a given database, a specific artifact has to be prepared.

Available artifacts in the NBPWR Repository

The following set of libraries are available in the specific NBPWR Repository, because the original artifacts are not in the Central Repo, or because there are pending issues to solve about the naming and/or versioning. Add this POM declaration for referencing the NBPWR repository:

 <repositories>
     <repository>
         <id>maven2-release-repository.nbpwr.kenai.com</id>
         <name>NBPWR Maven Release Repository</name>
         <url>http://nbpwr.kenai.com/maven-repository/releases</url>
     </repository>
 </repositories>


library version original library coordinates artifactId
Quaqua 4.4.5 ch-randelshofer-quaqua
EAIO UUID 2.1.5 com-eaio-uuid
Nimrod 1.0.7 com-nilo-plaf-nimrod
JAI ImageIO 1.1 com-sun-media-jai_imageio
NASA WorldWind 0.5 gov-nasa-worldwind
JAI 1.1.3 javax-media-jai
JCIP Annotations net-jcip-annotations
Incava Diff 1.1.0 org-incava-util-diff
BeansBinding 1.2.1 org-jdesktop-beansbinding
SwingWorker org-jdesktop-swingworker
Lobo Browser 0.98.4 org-lobobrowser
OpenSesame 2.2.3 org-openrdf
Elmo 1.4 org-openrdf-elmo-all
GlueGen 1.0.6 com-sun-gluegen
OpenGL (*) 1.1.1 javax-media-opengl
JAXB 2.1 javax-xml-bind


(*) From the NetBeans OpenGL Pack.

  • Mysql
  • Glassfish
  • Jruby
  • Rails
  • Nblogo
Terms of Use; Privacy Policy;
© 2010, Oracle Corporation and/or its affiliates
(revision 20100312.9442df5)
 
 
loading
Please Confirm