Search code examples
javawildcardjarmainclass

java -cp "lib/*" versus java -cp "lib/*.jar"


If the lib/ directory contains only .jar files, what's the difference between

java -cp "lib/*" ...

and

java -cp "lib/*.jar" ...

If I use the latter I ran into errors regarding main class and I don't understand why. lib/* also contains lib/., but is this the crucial difference?


Solution

  • According to the documentation of java only a basename of * is supported and it only ever matches .jar files.

    Nothing in the documentation suggests that "*.jar" is supported or that the directory itself is added to the classpath.