If your module uses some external library, you will probably use a wrapper module to make classes from that library available to your module at runtime.

A wrapper module is a module that contains no code - really the only significant thing about it is its manifest, which does two significant things, in addition to the standard module unique ID/version/etc.:

Starting with NB 5.0 you can simply use File | New Project | NetBeans Plug-in Modules | Library Wrapper Module Project to make a library wrapper.

So a wrapper module acts as a proxy to turn a library into a NB module. Since you can't modify the NetBeans classpath directly (nor would you want to), this is the way you let your code use third party libraries. It serves the same function that running with java -cp or setting CLASS_PATH would do in a smaller Java application.

There are other options for packaging libraries described here.

If the above was confusing, read the FAQ describing module dependencies.

Source: NetBeans FAQ

Parent Category: Other API Tips