Includere tutti i vasi in una directory nel classpath di Java

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][1]. C'è un progetto commons chiamato [Commons Launcher][2] 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}"/>
Commentari (0)

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à.

Commentari (1)

Pensate a un file jar come alla radice di una struttura di directory. Sì, dovete aggiungerli tutti separatamente.

Commentari (0)