Как включить в CLASSPATH все банки, присутствующие в определенном каталоге, за один раз?

У меня есть около сотни банок в определенном каталоге, который использует мое приложение. Поэтому я подумал, что сложно добавлять каждую банку по одной в путь к классам. Итак, есть ли какая-нибудь команда или какой-либо способ, чтобы я мог добавить все банки за один раз. некоторые *.jar должны добавить все банки.


person GuruKulki    schedule 02.05.2011    source источник
comment
Примером может быть добавление ... \ java_project \ jar *; к вашему пути к классам. Важная часть заключается в том, что после имени папки вы включаете обратную косую черту и звездочку.   -  person xxjjnn    schedule 02.02.2013


Ответы (1)


Да, вы можете использовать подстановочный знак, начиная с Java6. См. Раздел «Общие сведения о подстановочных знаках пути к классам»

Записи пути к классу могут содержать подстановочный знак базового имени *, который считается эквивалентным указанию списка всех файлов в каталоге с расширением .jar или .JAR. Например, запись пути к классам foo/* указывает все файлы JAR в каталоге с именем foo. Запись пути к классам, состоящая просто из *, расширяется до списка всех файлов jar в текущем каталоге.

До Java 6 вам приходилось указывать их все по отдельности.

person skaffman    schedule 02.05.2011
comment
Это верно, если вы используете переменную среды CLASSPATH или параметр командной строки -classpath (или -cp). Боль начинается при использовании MANIFEST.MF: Однако подстановочные знаки пути к классу не учитываются в заголовке jar-manifest пути к классу. - person bobndrew; 01.06.2011
comment
не работает для меня, Windows 10, также пробовал foo / * и foo / * - person Genry; 16.04.2017