установить java classpath для нескольких папок, которые имеют файлы jar и запускаются из командной строки - PullRequest
0 голосов
/ 22 октября 2019

Я пытаюсь запустить простой Java-класс с помощью командной строки Windows. Я установил JAVA_HOME и добавил его в системную переменную path.

У меня есть несколько jar-файлов в разных папках, и я пытаюсь добавить их все, используя classpath, используя приведенную ниже команду. Однако, когда используется "*", classpath выбирает только первый путь, а остальные пути игнорируются, хотя я использую ";"характер. Это не работает, если путь использует разделитель "/". Можно ли указать пути к нескольким папкам, которые содержат файлы JAR и компилируются из командной строки

javac -verbose -classpath "C: \ Program Files \ lib \ java \ core \ *; C: \ Program Files\ lib \ java \ core \ locale \ *; C: \ Program Files \ lib \ java \ modules \ *; C: \ Program Files \ lib \ java \ modules \ ext \ *; "testClass.java

В конечном итоге я хочу использовать эту настройку classpath в сценарии ant в свойствах проекта netbeans, чтобы упростить настройку.

1 Ответ

0 голосов
/ 23 октября 2019

Вот решение, которое в итоге сработало, как и ожидалось. Когда символ «*» используется в classpath для моего конкретного сценария, он пропускает все после первого пути. Использование двойных кавычек (") для каждого пути отдельно, а затем использование"; "в качестве разделителя является решением.

Наличие пробела до или после точки с запятой"; "также не будет работать

javac -verbose -classpath "C: \ Program Files \ lib \ java \ core \ *"; "C: \ Program Files \ lib \ java \ core \ locale \ *"; "C: \ Program Files \ lib\ java \ modules \ * ";" C: \ Program Files \ lib \ java \ modules \ ext \ * "testClass.java

...