2009-05-05 16 views
28

Sto cercando di utilizzare una libreria java open source per visualizzare nodi e spigoli in un grafico, ma sono completamente perso.Come si usa una libreria Java?

Ho un sacco di file jar in una cartella. Cliccando su alcuni dei file jar si aprono finestre java swing pop con i grafici visualizzati. Fare clic su altri file jar non fa nulla.

Se l'avessi capito, avrei semplicemente inserito i file jar lì con gli altri, o non funzionerebbe ancora?

E se mai capisco come utilizzare questi file, significa che devo includerli se trasferisco il mio progetto java su un altro computer? Come potrei fare per farlo?

risposta

19

Avete incluso queste librerie nel classpath?

Se si utilizza Eclipse, si potrebbe

Progetto -> Proprietà -> Java percorso di generazione -> addJar.

e il file Jar deve essere collocato in una directory all'interno del vostro spazio di lavoro (lib/per esempio)

Se dovete prendere il vostro progetto ad un altro computer, si potrebbe prendere questi passaggi

  1. Prima facendo qualcosa, esporta il tuo progetto (come un file Jar, per esempio).
  2. Salvalo nel tuo disco preferito (cd/drive usb/dischetto/nastro).
  3. On "l'altro" computer, è possibile importare questo progetto nel vostro spazio di lavoro
+0

Ok, per lo meno posso seguire questi passaggi^_^;; Mi sento un noob anche se ho usato java per anni. Ora che i file jar sono stati aggiunti al progetto eclipse, posso semplicemente usare il codice come farei per le librerie standard? Ho bisogno di dichiarazioni di importazione? – Jenny

+0

le istruzioni di importazione sono un modo per ridurre l'ambiguità tra classi con lo stesso nome ma pacchetti diversi. Non sono come C#include. L'importazione non è strettamente necessaria, ma è sempre meglio usare nomi di classi e non nomi completi quando possibile. – Tom

+0

Poiché si utilizza Eclipse, le istruzioni di importazione vengono quasi automaticamente. Non appena si tenta di utilizzare una classe dalla libreria esterna e si utilizza control-space per il completamento del nome, verrà aggiunta l'importazione. Oppure, se hai digitato il tutto, control-1 (quickfix) ti offrirà di aggiungere l'importazione. –

20

Credo che se si inseriscono i jar nel classpath, è possibile importare e utilizzare le classi proprio come si farebbe con una libreria standard. Capire il classpath può essere fonte di confusione, ma puoi semplicemente impostarlo quando avvii jvm. Anche il tuo IDE può avere opzioni per questo.

La maggior parte dei problemi java sono problemi del classpath.

+10

+1 per "la maggior parte dei problemi java sono problemi del classpath" ... – rmeador

+0

* medita * Ok, inizierò una ricerca epica per capire come scoprire/impostare il percorso della mia classe. – Jenny

+0

+ un altro 1 per "la maggior parte dei problemi java sono problemi del classpath". Parole di grande saggezza. –

1

lo si utilizza includendolo nel classpath dell'applicazione Java, in questo modo è possibile farvi riferimento dal codice. Here è un documento di partenza. Il JDK 1.6 ha alcune opzioni più semplici (come la specifica di più file jar come * .jar). È decisamente un po 'complicato, ma vale la pena saperlo.

+1

Grazie per il riferimento! Ho alcuni vaghi ricordi da incubo riguardo l'impostazione di percorsi di classe anni fa. È piuttosto divertente quanto possa essere semplice Java fino a quando non si vuole davvero fare qualcosa con esso. – Jenny

+0

Questa risposta richiede più upvotes per il semplice fatto di collegare alla documentazione effettiva. – dotancohen

0

Si dovrebbe avere documentazione per questi barattoli. Alcuni sembrano esempi, ma uno deve essere la modellazione del core graph e il rendering di Jar. Speriamo che gli esempi includano la fonte.

Basta aggiungere Jar al progetto in Eclipse (ad esempio, in una cartella/lib nel progetto, quindi aggiungerlo al percorso di generazione) e utilizzare la documentazione per utilizzare il codice. Puoi anche usare Eclipse per guardare all'interno del file Jar.

A meno che non ci sia alternativa, probabilmente non vale la pena utilizzare un carico di codice di terze parti che non è documentato almeno a livello di API e sicuramente senza esempi di fonti.

9

In Eclipse, è necessario aggiungere librerie allo project build path.

In generale, è necessario fornire le dipendenze tramite i meccanismi del classpath in fase di compilazione e runtime.I meccanismi precisi variano, ma, per esempio, se è stato utilizzato il compilatore javac, si dovrebbero fornire le librerie sulla riga di comando:

javac -classpath C:\dir\lib1.jar;C:\dir\lib2.jar foo/MyClass.java 

Queste dipendenze sarebbe anche necessaria per richiamare l'app:

java -classpath C:\dir\lib1.jar;C:\dir\lib2.jar;. foo.MyClass 

This page fornisce alcune informazioni utili, anche se la ricerca di parole per il termine "percorso di classe" dovrebbe fornire fonti alternative.