Fehler bei neuem Projekt

  • Hallo liebe Gemeinde,


    ich bin neu auf dem Gebiet der Java-/Android-Programmierung. Mit AndroidStudio habe ich schon ein paar einfache Projekte gemacht.


    Seit gestern suche ich nach einer Lösung für folgendes Problem:
    Sobald ich ein neues Projekt anlege, kommt, ohne dass ich auch nur eine Zeile Code geschrieben habe, schon die Meldung: "Error: XML-Dokumentstrukturen müssen innerhalb derselben Entity beginnen und enden."
    Diese bezieht sich auf die ...values\colors.xml

    Code
    <application>
        <component name="UpdatesConfigurable">
        <enabledExternalComponentSources>
            <item value="Android SDK" />
        </enabledExternalComponentSources>
        <option name="externalUpdateChannel

    Der Design-Editor wird erst gar nicht vollständig geladen, sondern gibt mir nur die Meldung aus: "Design editor is unavailable until a successful project sync"




    In meiner ActivityMain wird das "R" bei R.layout.activity_main schon rot markiert mit dem Hinweis: "Cannot resolve symbol 'R'"


    Code
    public class MainActivity extends AppCompatActivity {
    
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    }


    Alte Projekte, die mal funktioniert haben, zeigen das selbe Problem.


    "Invalidate Caches / Restart" habe ich erfolglos auch schon versucht.


    Irgendetwas hat es mir da wohl durcheinander gehauen.
    Ich kann mit AndroidStudio gerade überhaupt nichts mehr anfangen.
    Reinstallation hat Nichts genützt.
    Ich würde gerne schreiben, dass ich doch gar nichts gemacht habe aber dem scheint wohl nicht so...
    Hab keine Idee, was da schief geht...


    Bitte helft mir.


    Viele Grüße
    Pneumus :)

  • Hallo willkommen im Forum.



    Wenn die R Klasse nicht mehr richtig oder gar nicht erstellt wird liegt es meistens an einer XML Datei.


    Meistens ein Layout kann aber auch eine andere XML Datei sein. Schaue mal ob da eine Rot unterschrieben ist.



    In deinem Fall kann der Ressourcen Compiler, der immer im Hintergrund arbeitet, die Dateien nicht übersetzen.
    Somit wird die R Klasse nicht erstellt und der Compiler kennt logischer weise nicht das „R“



    Verschiebe mal deine Layout Dateien in einen anderen Ordner außerhalb deines Projektes.


    Mach nun mal ein Gradle Sync oder„Clean Projekt“ nun sollte zb . das „R.id“ Schwartz sein der Rest rot
    setContentView(R.layout.activity_main); da die Datei nicht existirt im Projekt . aber die R Klasse wurde angelegt.



    Wenn dem so ist konnte der Ressourcen Compiler die Dateien übersetzen und auch die R Klasse angelegt. So nun kopiere nach einander die Dateien wieder in den Layout Ordner und du wirst herausfinden in welcher Datei etwas nicht stimmt. Prüfe immer zwischen durch ob die R Klasse erstellt wurde in dem du „Clean Projekt“ machst denn dabei wird erst die R Klasse gelöscht und anschließend neu erstellt.


    Genau das wird auch beim laden eines Projektes gemacht. Deshalb ist wahrscheinlich auch bei einem alten Projekt mit falscher XML Datei die R Klasse nicht erstellt worden.
    Bei einem normalen Build oder Gradle sync wird nicht unbedingt die R Klasse gelöscht und neu erstellt.




    Ps. wie ist das wenn du ein neues Projekt erstellst ? wenn es da auch so ist würde ich über eine neu Installation von AS nachdenken. Welch Version hast du?

  • Hallo jogimuc,


    vielen Dank für deine Hilfe schon mal.


    Das Verschieben der Layout- bzw. XML-Dateien zeigt nicht das von dir beschriebene Ergebnis.
    Das "R" bleibt rot und die .activity_main weiterhin schwarz.


    Ja, bei neuen Projekten verhält sich das genau so.
    Nur zum besseren Verständnis: Wir sprechen hier über neue Projekte in denen ich nicht eine Zeile Code geschrieben habe und über ältere Projekte, die mal einwandfrei funktionierten.


    Ich nutze AS 3.2.1
    SDK Tools 26.1.1
    API 28 Android 9.0 (Pie) revision 6


    Und im SDK Manager ist auch alles installiert.





    Meine color.xml sieht so aus:

    Code
    <application>
        <component name="UpdatesConfigurable">
        <enabledExternalComponentSources>
            <item value="Android SDK" />
        </enabledExternalComponentSources>
        <option name="externalUpdateChannel

    <application> ist rot - Meldung: "Element application must be declared"


    Am Ende der letzten Zeile erhalte ich folgende Meldung:


    "Tag start is not closed"


    Ich habe zwar schon versucht, diese mit ">" zu schließen aber dann heißt es: "Unexpected end of file"
    (Witzig....)



    Was mich an der ganzen Sache noch zusätzlich wundert ist folgendes:
    Bei älteren Projekten (Mit gleicher Activity - ich nutze nur die Empty Activity) sieht die color.xml wie folgt aus:


    Code
    /* AUTO-GENERATED FILE.  DO NOT MODIFY.
        *
        * This class was automatically generated by the
        * gradle plugin from the resource data it found. It
        * should not be modified by hand.
        */
        package android.support.


    Mein Gefühl sagt mir, dass mit dieser color.xml etwas nicht stimmt.
    Die wird ja auch bei einer Projekt-Neuanlage von AS direkt angeprangert.


    Hast noch ne Idee oder soll ich AS einfach mal neu aufsetzen?


    Viele Grüße


    Pneumus

  • meine Color xml

    Code
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <color name="colorPrimary">#008577</color>
        <color name="colorPrimaryDark">#00574B</color>
        <color name="colorAccent">#D81B60</color>
    </resources>


    sdk manager siehe bild


    gradle file


    einzige idee eine komplette neu installation von AS
    vorher alles deinstalliren auch das SDk von Hand löschen .


    Verschiebe Lösche deine Color xml und teste.

  • So.
    Zwischenzeitlich habe ich AS deinstalliert, die SDK manuell gelöscht und alles neu installiert.
    Keine Verbesserung.


    In meiner Verzweiflung habe ich eine Systemwiederherstellung gemacht (2 Wochen zurück)
    Auch keine Verbesserung.


    Ich bekomme nach wie vor diese Fehler (siehe Bilder):


    So langsam beschleicht mich das Gefühl, ich kann mein OS neu aufsetzen...

  • Hallo also so eine Fehlermeldung habe ich noch nie gehabt.



    Ich vermute das bei dir das Gradle nicht richtig läuft. Denn die Datei die als Color.xml erstellt wird ist falsch.



    Eine richtige habe ich ja gepostet.
    Denke das Android Studio das Projekt nicht richtig erstellt oder nicht richtig fertig wird.



    Im Anhang ist ein Standard Projekt wie es aussehen sollte.



    Ob es am OS Windows liegt kann ich nicht sagen.



    Hast du auch mal dein Java erneuert. Passt die Version zu deinem System?


    Ich benutze Version 8 .191 und win 10.



    Ansonsten nochmal alles deinstallieren auch alle Dateien unter deinen User Namen.


    .android , .AndroidStudio2.3 , .gradle , AppData\Lokal\Android\SDK




    Habe auch mal zum Test dein code der bei dir in der Color.xml steht bei mir eingegeben und ich bekomme die gleiche Fehlermeldung.
    also ist sicher das dein Studio spinnt.

  • Also.
    Das Problem scheint gelöst zu sein.


    Meine Java Version ist ebenfalls die 8.191.
    Deine Test-App konnte ich leider auch nicht öffnen.
    Gleiches Resultat.


    Mein "Fehler" war, dass ich bei der Deinstallation nicht alle Ordner unter User gelöscht habe.
    Nach diesem Mal VOLLSTÄNDIGER Reinstallation funktioniert es wieder.


    Wie es überhaupt zu diesem Phänomen gekommen ist kann ich beim besten Willen nicht sagen.
    Vorgestern war noch happy-coding und am Tag darauf ging Nichts mehr.


    Wie auch immer - du hast mir den entscheidenden Tipp gegeben :)
    1000 Dank dafür und viele Grüße aus Süddeutschland!!! :) :) :)

  • Freut mich das es wieder geht.
    Bei Windows ist es ja hofft so das die angebotene deinstall Routine nicht alles entfernt da ist meistens handarbeit angesagt.
    Bei dem studio ist es leider auch so.


    Was soll's nun geht es ja wieder.
    Danke für die RückAntwort. :) macht leider nicht jeder hier im Forum.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!