Выполнить файл JAR с несколькими библиотеками пути к классам из командной строки

У меня есть проект Maven, который генерирует файл JAR и копирует все зависимости вtarget/lib папка. Я хочу выполнить этот проект на клиентес машиной (windows). Итак, я скопировалmyproject.jar вC:\xyz папка и все зависимостиC:\xyz\lib папка. Как мне выполнить этот проект от клиента?с командной строки? Я пытался использоватьjava -cp lib\*.jar -jar myproject.jar отC:\xyz папку, но выдает следующую ошибку.

Exception in thread "main" java.lang.NoClassDefFoundError: lib\commons-codec-1/3/jar
Caused by: java.lang.ClassNotFoundException: lib\commons-codec-1.3.jar
    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)
Could not find the main class: lib\commons-codec-1.3.jar.  Program will exit.

Я думаю, что если я укажу все зависимости в classpath (например,java -cp lib\dep1.jar;dep2.jar), это избавит от проблемы, но я неЯ не хочу этого делать, так как у меня уже есть 40 библиотек, и это может возрасти в будущих выпусках. Есть лучший способ сделать это?

Ответы на вопрос(8)

Ваш ответ на вопрос