Quando pulisco il mio progetto ottengo il seguente errore:utilizzo sconsiderato o sbagliata di una classe principale (java * o javax *..) Quando non è la costruzione di una libreria di base
[2011-10-05 13:47:53 - The Basics] Dx
trouble processing "java/nio/CharBuffer.class":
Ill-advised or mistaken usage of a core class (java.* or javax.*)
when not building a core library.
Ciò è spesso dovuto includere inavvertitamente un file di libreria di base nel progetto dell'applicazione, quando si utilizza un IDE (come ad esempio Eclipse). Se sei sicuro di non definire intenzionalmente una classe principale , allora questa è la spiegazione più probabile di ciò che è attivo.
Tuttavia, si potrebbe effettivamente si stia tentando di definire una classe in uno spazio dei nomi nucleo , la fonte di cui si potrebbe aver preso, per esempio, da un progetto di macchina virtuale non-Android. Questo è il più sicuramente non funziona. Come minimo, compromette la compatibilità della tua app con le versioni future della piattaforma. Spesso è anche di legalità discutibile.
Se davvero intenzione di costruire una libreria di base - che è solo appropriata come parte della creazione di una macchina virtuale completa distribuzione, al contrario di compilazione di un'applicazione - quindi utilizzare il "--core-library" opzione per sopprimere questo messaggio di errore.
Se si va avanti e usare "--core-library", ma sono in realtà costruzione di un'applicazione, quindi sappiate che l'applicazione non riuscirà a costruire o eseguire, ad un certo punto. Si prega di essere preparato per i clienti arrabbiati che trovano, per esempio, che l'applicazione cessa di funzionare una volta che hanno aggiornato il loro sistema operativo . Sarai incolpato di questo problema.
Se si sta legittimamente utilizzando un codice che si trova in un pacchetto core , l'alternativa più semplice e sicura che si ottiene è il codice . Ovvero, sposta le classi in questione nello spazio dei nomi del tuo pacchetto . Ciò significa che non saranno mai in conflitto con le classi del sistema principale. JarJar è uno strumento che può aiutare lo in questo sforzo. Se scopri che non puoi farlo, allora è un'indicazione che il percorso su cui ti trovi alla fine sarà il a causare dolore, sofferenza, dolore e lamento.
[2011-10-05 13:47:53 - The Basics] Dx 1 error; aborting
[2011-10-05 13:47:53 - The Basics] Conversion to Dalvik format failed with error 1
Grazie per questa risposta ... JUnit era quello che stava causando l'errore per me. – tantalum