Czy istnieje sposób na włączenie wszystkich plików jar w obrębie katalogu do ścieżki klas?
I'm próbuje java -classpath lib/*.jar:. my.package.Program
i nie jest w stanie znaleźć plików klas, które na pewno są w tych słoikach. Czy muszę dodać każdy plik jar do classpath osobno?
Jeśli naprawdę musisz określić wszystkie pliki .jar dynamicznie, możesz użyć skryptów powłoki lub Apache Ant. Istnieje projekt commons o nazwie Commons Launcher, który w zasadzie pozwala ci określić skrypt startowy jako plik budowania mrówki (jeśli widzisz, co mam na myśli).
Wtedy możesz określić coś takiego jak:
<path id="base.class.path">
<pathelement path="${resources.dir}"/>
<fileset dir="${extensions.dir}" includes="*.jar" />
<fileset dir="${lib.dir}" includes="*.jar"/>
</path>
W swoim pliku build startowym, który uruchomi twoją aplikację z poprawną ścieżką klas.
Musisz dodać je wszystkie osobno. Alternatywnie, jeśli naprawdę potrzebujesz tylko określić katalog, możesz rozpakować wszystko do jednego dir i dodać go do swojej ścieżki klas. Nie polecam jednak tego podejścia, ponieważ ryzykujesz dziwaczne problemy z wersjonowaniem ścieżki klas i niezarządzalnością.