Run Java Programs from Cygwin

The java exe is a Windows program, so it expects a Windows style classpath.

This will not work:

 [cygwin] release $ java -cp "bin/*:lib/*" com.tnsi.tap.Versin
java.lang.NoClassDefFoundError: com/tnsi/tap/Versin
Caused by: java.lang.ClassNotFoundException: com.tnsi.tap.Versin
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Could not find the main class: com.tnsi.tap.Versin.  Program will exit.
Exception in thread "main"  [cygwin] release $


Use a semicolon instead:

 [cygwin] release $ java -cp "bin/*;lib/*" com.tnsi.tap.Version
TNSPay Retail Gateway - TokenisationAdapter 1.0.0.1 23Nov2011
 [cygwin] release $