C'è un modo per includere tutti i file jar all'interno di una directory nel classpath?
Sto provando java -classpath lib/*.jar:. my.package.Program
e non è in grado di trovare i file di classe che sono certamente in quei barattoli. Devo aggiungere ogni file jar al classpath separatamente?
Se avete davvero bisogno di specificare tutti i file .jar dinamicamente, potreste usare script di shell, o Apache Ant. C'è un progetto commons chiamato Commons Launcher che fondamentalmente ti permette di specificare il tuo script di avvio come un file di build ant (se capisci cosa intendo).
Quindi, puoi specificare qualcosa come:
<path id="base.class.path">
<pathelement path="${resources.dir}"/>
<fileset dir="${extensions.dir}" includes="*.jar" />
<fileset dir="${lib.dir}" includes="*.jar"/>
</path>
nel tuo file di build di lancio, che lancerà la tua applicazione con il classpath corretto.
Devi aggiungerli tutti separatamente. In alternativa, se avete vero bisogno di specificare solo una directory, potete unjar tutto in una cartella e aggiungerla al vostro classpath. Non raccomando questo approccio, tuttavia, in quanto si rischiano bizzarri problemi di versionamento del classpath e di ingestibilità.