Ich verwende die Guava r09-Bibliothek in einer Android-App, aber ich erhalte den folgenden Fehler, wenn ich es mit 1.6 verwende. Es ist ein bisschen komisch, weil es in 1.5 gut funktioniert. Auch die Methode, die "nicht gefunden" ist, ist sehr deutlich da. Ich habe auch versucht, die Datei jsr305.jar aufzunehmen, aber das funktioniert immer noch nicht.
Schätzen Sie jede Hilfe, das Ausführen von I / O in Java ist ohne Guava so schmerzhaft.
Dies ist der Code:
%Vor%Dies ist die Ausnahme:
%Vor%Ich habe es geschafft, dies am Ende zu lösen. Wenn ich jarjar verwende, um com.google.common.io.LineReader in einen anderen Paketnamen umzubenennen (z. B. com.triposo.vendor.com.google.common.io.LineReader), funktioniert es! Meine Vermutung ist, dass LineReader in Android gebündelt ist, aber mit einer etwas anderen (inkompatiblen) Version.
Aus diesem Grund ist die Verwendung nicht dokumentierter Android-API-Aufrufe schlecht. CharStreams war nie Teil der Android-API (die Entfernung wird nicht im 1.6 changelog ).
Undokumentierte Klassen oder Methoden können ohne vorherige Ankündigung von jeder OS-Revision verschwinden, so wie es hier passiert ist.