mi chiamo Pierpaolo e sono studente di Informatica. Sono alle prese col
seguente problema:
data una classe Java, vorrei poter risalire a tutti gli oggetti o classi
da essa utilizzati, per poterli impacchettare insieme e farne magari un
JAR file da prelevare una volta per tutte riducendo i tempi dovuti al
dover scaricare le classi una per volta quando necessario.
Ho visto che il metodo writeObject() usato nella serializzazione fa una
cosa del genere, cioe' ricerca ricorsivamente tutti gli oggetti
utilizzati da una classe e li serializza assieme ad essa. A me interessa
solo la fase di ricerca, perche' poi col risultato vorrei fare un JAR
file, e non un albero di oggetti serializzato...
Spero di essere stato chiaro, e ringrazio anticipatamente chiunque
vorra' rispondermi.
Bye,
Pierpaolo
P. S. Se possibile, rispondetemi anche via e-mail. Grazie.
Pierpaolo Ferretti wrote:
> data una classe Java, vorrei poter risalire a tutti gli oggetti o classi
>
> da essa utilizzati, per poterli impacchettare insieme e farne magari un
>
> JAR file da prelevare una volta per tutte riducendo i tempi dovuti al
>
[omissis]...suggerimenti stupidi:
1) ti compili il .java in una directory indipendente. I .class da includere
sono quelli dichiarati come import (esclusi quelli predefiniti) + quelli che
trovi nella directory
2) esegui javadoc, guardi la pagina tree.html (la gerarchia di TUTTI gli
oggetti che usi, anche senza volerlo)
3) hai solo il .class e non il .java? Decompila. Si chiama "mocha" ed e'
gratis (oltre che scritto in java e percio' portabile).
--
Alexis Paul Bertolini
- PhD student in Computer Science at Milan University, Italy
- Managing director of Warehouse Creations
- Developer of Java applications, Web services, Network Databases
- Teacher of English as a foreign language
Grazie per il suggerimento,
in particolare funziona il punto 1, mettendo nel classpath solo la
directory
sorgente e quella delle classi Java standard, altrimenti il compilatore
potrebbe trovare le classi ausiliarie in una directory in cui erano
state
compilate in precedenza, se questa si trova nel classpath.
Per quanto riguarda il punto 2, javadoc non sembra elencare le classi
utilizzate nel codice, ma soli i metodi e le variabili delle classi
contenute
nel file sorgente.
Grazie ancora,
Pierpaolo
--
Pierpaolo Ferretti
Dept. of Computer Science, University of Bologna
e-mail: ferr...@cs.unibo.it