R.java
to plik, który wtyczki Android Eclipse tworzą podczas budowania aplikacji. R.java
jest tworzony w katalogu „gen”. Ten plik jest generowany na podstawie informacji w katalogu „res”. Jeśli uruchomisz wybierz „Projekt” -> „Wyczyść ...” w menu Eclipse, usunie, a następnie ponownie wygeneruje R.java
plik.
Problem „R nie może zostać rozwiązany” występuje po zmianie nazwy pakietu w AndroidManifest.xml
pliku. Używa nazwy pakietu Androida, aby utworzyć podkatalog w katalogu „gen”, w którym przechowuje R.java
plik.
Zaćmienie może mieć problemy z wykonaniem czyszczenia, ponieważ nie ma pewności, gdzie R.java
znajduje się plik po zmianie nazwy pakietu Androida. Możesz albo zmienić nazwę podkatalogu, gen
aby pasował do nazwy nowego pakietu, lub możesz zmienić nazwę pakietu z powrotem na starą. Wykonaj czyszczenie, a następnie zmień nazwę pakietu na nową, którą chcesz. Działa to najlepiej, jeśli powstrzymasz Eclipse przed próbą kompilacji podczas zmiany nazwy pakietu. W menu „Projekt” odznacz opcję „Kompiluj automatycznie”, a także, gdy okno dialogowe „Wyczyść ...” zapyta, czy powinno „Rozpocznij kompilację natychmiast”, odznacz to pole, aby nie próbowało budować podczas zmiany nazwa pakietu. Po zmianie nazwy możesz ponownie włączyć opcję „Automatycznie buduj”.
Pamiętaj, że jeśli AndroidManifest.xml
nazwa pakietu plików nie jest zgodna z nazwą pakietu Java, Eclipse automatycznie doda „import <nazwa pakietu Android> .R;” wstaw wszystkie .java
pliki z odniesieniami do R. Jeśli zmienisz AndroidManifest.xml
nazwę pakietu, czasami Eclipse nie aktualizuje wszystkich tych dodanych importów. Jeśli tak się stanie, użyj refaktoryzacji Eclipse ( ALT+
Shift+ R), aby zmienić instrukcję importu w jednym z plików Java na AndroidManifest.xml
nazwę nowego pakietu. Najlepiej to zrobić po wyłączeniu opcji „Automatycznie buduj”.