Не Perl-код (без кода = без ошибок :), но не
export CLASSPATH=.:lib/*
работа? В моем bash-скрипте, который запускает приложение Java, я установил это, и приложение может «видеть» все .jars, которые я хочу, но вы можете установить его «глобально»:
mn@test:~# export CLASSPATH=.:/usr/local/jars/*
mn@test:~# echo $CLASSPATH
.:/usr/local/jars/*
mn@test:~# ls /usr/local/jars/*.jar
/usr/local/jars/activation.jar ...
mn@test:/home# cat show_cp.java
public class show_cp
{
public static void main(String[] args)
{
System.out.println(System.getProperty("java.class.path", "."));
}
}
mn@test:/home# java show_cp
.:/usr/local/jars/postgresql-8.4-701.jdbc4.jar:/usr/local/jars/RmiJdbc.jar:/usr/local/...
EDIT:
Вы можете использовать подстановочные знаки в CLASSPATH, как описано в Установка пути к классу
И Perl-код для объединения имен файлов:
my @files = glob "/jars/*.jar";
my $cp = join(":", @files);
print($cp)