Sto lavorando a un progetto plug-in di Eclipse.
Utilizzando questo plug-in, gli utenti possono creare progetti Java Eclipse con alcune specificità. Ad esempio, possono aggiungere nomi di classi Java che verranno salvati in un file. Queste classi Java possono essere create su src del progetto o utilizzate da un file jar che deve essere aggiunto al classpath del progetto. In questo caso, il plug-in utilizzerà la reflection per ottenere alcuni dati da ciascuna classe.
Esistono due casi di test diversi che danno lo stesso errore perché il plug-in non riesce a trovare la classe da istanziare:
-
Un jar contiene una classe con un nome salvato nel file non aggiunto al classpath del progetto. Quindi in questo caso il classpath è incompleto.
-
L'utente del plug-in ha aggiornato un jar in cui la sua vecchia versione del jar conteneva la classe denominata, ma la nuova versione di jar non lo fa (cosa che potrebbe accadere se la classe fosse cancellata dalla nuova versione di il vaso). In questo caso, il plug-in non troverà la classe ma il classpath è completo.
Quindi il plug-in deve distinguere tra i due casi di test quando non riesce a trovare il nome della classe usando reflection.
Come si può fare?