Ho un codice java (compilato correttamente per Android) in un progetto di libreria (LIB) che voglio utilizzare in un altro progetto Android (A).Android - Junit - Progetto testato utilizza Jar esterno
Dato che il codice di LIB difficilmente cambierà molto, ho deciso di aggiungerlo come jar a A. Funziona benissimo.
Ho un altro progetto che è un progetto di strumentazione Android, testando il primo progetto Android (B).
Quindi quello che abbiamo ora è un compresi LIB come un vaso esterno e B testing A.
Il problema inizia quando voglio accedere dal codice B scritto in LIB. Da quello che vedo, a meno che non aggiunga LIB come jar esterno a B, si rifiuta di compilare (cioè, non può accedere al codice nel jar LIB incluso in A).
Sono riluttante aggiungere LIB come un vaso esterno per B perché: 1. non si sente bene, e 2. Quando si esegue il test non riesce con:
java.lang.IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation
ho trovato Mike's question , ma la sua soluzione copre solo la compilazione usando uno script ant, e al momento preferisco usare l'IDE Eclipse per questo progetto.
Qualche idea su come posso risolvere questo problema?
Risolto seguendo [Questo post del blog] (http://dtmilano.blogspot.com/2009/12/android-testing-external-libraries.html). Sembra che dovrei avere _exported_ LIB da A, per renderlo accessibile da B. –
Ciò ha aiutato. Ho esportato le dipendenze Android dal progetto principale (il jar era nella cartella libs, quindi non era possibile esportarlo direttamente), e nel progetto di test doveva anche controllare il progetto principale. Ora funziona. – Ixx