Salve,
sto cercando di capire qualcosa con la creazione delle librerie. Per fare delle prove semplici ho creato delle directory così:
codice:Prove mielib cose.class manifest.txt mate Sum.class Sot.class Mol.class persone Nome.class Misure.class
Ho iniziato a creare dei file jar separati dal prompt del dos:
mi sono messo nella directory mielib:
D:\...\Prove\mielib>jar cf mate.jar mate
e mi ha creato un file mate.jar
poi
D:\...\Prove\mielib>jar cf persone.jar persone
e mi ha creato un file persone.jar
Non ho messo il file manifest.txt in quanto nessuna di queste classi hanno in main.
Le ho testate così:
import mate.*;
import persone.*;
e tutto funziona.
Ora volendo riunire queste due librerie in un solo file jar del tipo: mielib.jar
in modo che le possa usare, aggiungendo alle librerie un solo file jar.
Vado a creare il jar, questa volta includo anche la classe Cose.class ed il manifest.txt.
Nel file manifest.txt ho scritto: Class-Path: mate persone
D:\...\Prove>jar cmf manifest.txt mielib.jar mielib Cose.class
Dopo aver importato tra le librerie esterne mielib.jar
Le vado a testare così:
import mielib.*;
import mielib.mate.*;
import mielib.persone.*;
Ma ho il seguente errore:
...package mielib does not exist import mielib.*;
...error: cannot access Sum
Sum.su(10,30);
bad class file: D:\Archivio\Netbeens\Grafica\Package\Prove\mielib. jar(mielib/mate/Sum.class)
class file contains wrong class: mate.Sum
Please remove or make sure it appears in the correct subdirectory of the classpath.
Dove è che sbaglio, perché non me le vede?
Grazie