allora, ti ho detto di rivedere l'organizzazione dei file (il packaging) in java perché hai provato a importare l'intero jar, quindi visto che sei all'inizio, probabilmente non ti è chiarissimo e un ripasso non può che fare bene.
Quando tu crei un progetto (una lib), dentro questo progetto sicuramente hai una organizzazione di questo tipo:
com (it).nomeAzienda(nomesviluppatore).nomeModulo
i nomi ovviamente sono variabili, ma questo che ti ho scritto sopra (che è il nome del package) viene messo dentro ogni file java (dopo la parola chiave package) e serve ad identificare univocamente una classe.
In generale una classe java è definita come
sul file system, partendo dalla root di definizione del sorgente, avrai nella cartella it/valia/packageEsempio il .class della classe Example.codice:package it.valia.packageEsempio; import java.util.List; public class Example{...}
queste sono due righe sulla definizoine di package.
Se io fornisco a te una libreria, devo darti un minimo di howto, dirti cosa contiene e come andarlo a beccare. QUesto significa scrivere la javadoc (o un minimo di guida appunto).
Se non sai cosa mettere dentro import, se non hai la javadoc hai un problema, perché il jar per noi è una scatola nera e non avendo info dal produttore del jar, non sai come trattarlo.
Tu hai anche scompattato il jar, avrai visto l'alberatura (del tutto uguale a quella dei sorgenti), ovviamente non sapendo altro sulla lib, non sai cosa c'è, cosa ti serve ecc.
altra precisazione: tu non importi il codice decompilato, ti limiti a dire "guarda che la definizione di quell'oggetto lì si trova dove ti indico". Significa che il compilatore andrà a cercare il tuo riferimento, se lo trova prosegue. A livello molto basso hai l'integrazione degli oggetti, ad alto livello ricorda solo che stai indicando un altra locazione dell'oggetto, non stai affatto copiando l'oggetto nella tua classe