Я читаю какую-то книгу по продвинутому Java и мне поручено скомпилировать файл .java
с помощью следующей команды:
javac -d classes -classpath c:\somepath\somejar.jar;classes:.
Интересно:
- Являются ли
:.
эти символы символами одного аргумента или :
и .
отдельно являются разными аргументами после ключевого слова classes
? что они обозначают?
- Почему нам нужно предоставить
classes:.
вообще после somejar.jar
? как все эти комбинации:
javac -d classes -classpath c:\somepath\somejar.jar;classes:.
javac -d classes -classpath c:\somepath\somejar.jar;classes:
javac -d classes -classpath c:\somepath\somejar.jar;classes
javac -d classes -classpath c:\somepath\somejar.jar;
работают абсолютно одинаково. Они генерируют точно такие же файлы .class
(по 226 байт каждый), и когда я развертываю их в веб-контейнере, они работают одинаково.
Так какой смысл в этих символах? Чем выше четыре javac ..
команды отличаются? Кто-нибудь, кто может объяснить это ясно, пожалуйста?