JUG is a pure java UUID generator, that can be used either as a component in a bigger application, or as a standalone command line tool (a la 'uuidgen'). UUIDs are 128-bit Universally Unique IDentifiers (aka GUID, Globally Unique IDentifier used in Windows world).
JUG generates UUIDs according to the IETF UUID draft specification (and further clarified in UUID URN name space IETF draft ) – all 3 'official' types defined by the draft – is fast, portable and Open Source (as well as Free Software ).
You can use JUG in your application according to the license terms of LGPL (Lesser General Public License); or, from version 2.0 on, ASL . See Download page for more details.
From version 1.0.0 on, native code (invoked via JNI) for accessing Ethernet MAC address is included with Jug distribution. Big thanks to Paul Blankenbaker and DJ Hagberg (amongst others) for their code contributions!
Note that using this functionality is optional: only time+location - based generation needs MAC address, and even with it, one can just pass the address from a configuration file.
Currently JNI-based Ethernet MAC address support is available on following platforms:
* Linux / x86
* Windows (98, ME, NT, 2K, XP?) / x86
* Solaris / Sparc
* Mac OS X
* FreeBSD / x86
Note: if anyone can recompile Mac OS X JNI code on Open/NetBSD and try if if it works, that would be useful (FreeBSD JNI code was compiled this way).