Intellij IDEA zawiesił się, a teraz zgłasza błąd


103

Pracuję w Intellij IDEA, ale mój komputer zawiesza się, więc wyłączam komputer. (długie kliknięcie przycisku zasilania) Po włączeniu komputera i uruchomieniu IntelliJ IDEA miałem ten błąd:

Cannot load settings from file 'C:\Users\user\.IdeaIC13\config\options\code.style.schemes.xml': java.lang.AssertionError: Unexpected content storage modification File content will be recreated

Zamykam IDEA i zaczynam od nowa, teraz nie mam poprzedniego błędu, ale kiedy otwieram projekt mam ten błąd:

Error:Internal error: (org.jdom.input.JDOMParseException) Error on line 1: Content is not allowed in prolog.
org.jdom.input.JDOMParseException: Error on line 1: Content is not allowed in prolog.
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:533)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:946)
    at com.intellij.openapi.util.JDOMUtil.loadDocument(JDOMUtil.java:364)
    at com.intellij.openapi.util.JDOMUtil.loadDocument(JDOMUtil.java:342)
    at org.jetbrains.jps.model.serialization.JpsLoaderBase.loadRootElement(JpsLoaderBase.java:69)
    at org.jetbrains.jps.model.serialization.JpsLoaderBase.loadRootElement(JpsLoaderBase.java:40)
    at org.jetbrains.jps.model.serialization.JpsLoaderBase.loadComponents(JpsLoaderBase.java:52)
    at org.jetbrains.jps.model.serialization.JpsProjectLoader.loadFromDirectory(JpsProjectLoader.java:119)
    at org.jetbrains.jps.model.serialization.JpsProjectLoader.loadProject(JpsProjectLoader.java:98)
    at org.jetbrains.jps.model.serialization.impl.JpsSerializationManagerImpl.loadModel(JpsSerializationManagerImpl.java:41)
    at org.jetbrains.jps.cmdline.JpsModelLoaderImpl.loadModel(JpsModelLoaderImpl.java:45)
    at org.jetbrains.jps.cmdline.BuildRunner.load(BuildRunner.java:71)
    at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:198)
    at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:113)
    at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler$1.run(BuildMain.java:133)
    at org.jetbrains.jps.service.impl.SharedThreadPoolImpl$1.run(SharedThreadPoolImpl.java:41)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content is not allowed in prolog.
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203)
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)
    at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1436)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:999)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:518)
    ... 20 more
Caused by: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content is not allowed in prolog.
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203)
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)
    at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1436)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:999)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:518)
    at org.jdom.input.SAXBuilder.build(SAXBuilder.java:946)
    at com.intellij.openapi.util.JDOMUtil.loadDocument(JDOMUtil.java:364)
    at com.intellij.openapi.util.JDOMUtil.loadDocument(JDOMUtil.java:342)
    at org.jetbrains.jps.model.serialization.JpsLoaderBase.loadRootElement(JpsLoaderBase.java:69)
    at org.jetbrains.jps.model.serialization.JpsLoaderBase.loadRootElement(JpsLoaderBase.java:40)
    at org.jetbrains.jps.model.serialization.JpsLoaderBase.loadComponents(JpsLoaderBase.java:52)
    at org.jetbrains.jps.model.serialization.JpsProjectLoader.loadFromDirectory(JpsProjectLoader.java:119)
    at org.jetbrains.jps.model.serialization.JpsProjectLoader.loadProject(JpsProjectLoader.java:98)
    at org.jetbrains.jps.model.serialization.impl.JpsSerializationManagerImpl.loadModel(JpsSerializationManagerImpl.java:41)
    at org.jetbrains.jps.cmdline.JpsModelLoaderImpl.loadModel(JpsModelLoaderImpl.java:45)
    at org.jetbrains.jps.cmdline.BuildRunner.load(BuildRunner.java:71)
    at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:198)
    at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:113)
    at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler$1.run(BuildMain.java:133)
    at org.jetbrains.jps.service.impl.SharedThreadPoolImpl$1.run(SharedThreadPoolImpl.java:41)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

Jak mogę rozwiązać ten problem?


Sprawdź kodowanie w pliku XML. Błąd sugeruje, że jest on wynikiem złego kodowania - a mianowicie, że znacznik kolejności bajtów jest tam, gdzie nie powinien.
Makoto

Ten problem występuje w Android Studio, gdy próbuje wymusić sprawdzenie dostępności nowych wersji SDK po uruchomieniu. Nic nie można zrobić, aby to naprawić.
IgorGanapolsky

Odpowiedzi:


208

Ta odpowiedź działa zarówno dla IntelliJ, jak i AndroidStudio

Jeśli nie możesz nawet otworzyć swojego projektu w IntelliJ [AndroidStudio]:

  • Zamknij IntelliJ [AndroidStudio]
  • Przejdź do katalogu <your_home> /.IntelliJIdeaXX[.AndroidStudioXX]/system/cache

    GDZIE

    • <your_home> to

      • Użytkownicy systemu Windows: C:\Users\<**Your User**>\(lub %USERPROFILE%)
      • Użytkownicy systemu Linux (Ubuntu), Mac: ~/
    • XX to Twoja wersja IntelliJ (w niektórych wersjach ten katalog to „pamięci podręczne”).

  • Usuń wszystkie pliki z katalogu pamięci podręcznej.
  • Następnie uruchom ponownie IntelliJ [AndroidStudio]

To działało w przeszłości.


3
Co to jest dom? Obszar roboczy, w którym znajdują się projekty? Android Studio w plikach programu / Android /? lub folder Android Studio w Users / UserName / AndroidStudio?
Andrew S,

2
To zależy od używanego systemu operacyjnego. Na przykład domyślny katalog domowy użytkownika w systemie Windows 7 to c: \ Users \ <login_user_name>. W systemie Linux uruchom „echo $ HOME”
Ask613

To z pewnością działa, ale pamiętaj, że spowoduje to zresetowanie ustawień (czcionek, ustawień formatowania itp.) W twoim Intellij. Na szczęście można je łatwo przywrócić w ustawieniach, ponieważ przy pierwszej zmianie tych ustawień trzeba było utworzyć schemat, który nadal istnieje.
NecipAllef

W pomyśle 13 katalog „cache” to teraz „cache” - usunięcie wszystkiego, co tam jest, nadal działa.
Yann

Ten folder go nie zawiera. [macbook_tcs] ---> [/ Users / timsiwula /] $ cd ~ / .IntelliJIdea15 / [macbook_tcs] ---> [/Users/timsiwula/.IntelliJIdea15/]$ ls -la łącznie 0 drwxr-xr-x 3 timsiwula personel 102 12 czerwca 10:57. drwxr-xr-x + 105 timsiwula personel 3570 6 listopada 23:47 .. drwxr-xr-x 3 timsiwula personel 102 paź 7 22:37 restart [macbook_tcs] ---> [/Users/timsiwula/.IntelliJIdea15/]$
timxor

69

moje rozwiązanie

W project/.ideamam uszkodzony workspace.xmlplik. Po prostu zamykam Android Studio (Intellij IDEA), usuwam ten plik i uruchamiam Android Studio.

Wszystkie inne podejścia nie działają dla mnie.


Działało dobrze! Ale musiałem ponownie dodać zestawy SDK.
WeirdElfB0y


12

Miałem ten sam problem, usunąłem katalog .idea i pliki * .iml i ponownie utworzyłem projekt.


z eksploratora systemu operacyjnego, w którym znajdują się pliki projektu
Hossein,

2
  1. W folderze .idea znajduje się wiele plików XML.

  2. Ten błąd pojawia się, jeśli niektóre pliki XML są nieprawidłowe.

  3. Najpierw sprawdź, czy plik workspace.xml jest prawidłowy, czy nie.

  4. Jeśli plik workspace.xml jest prawidłowy, sprawdź inne pliki.


2

W moim przypadku pliki projektu w .idea zostały uszkodzone. Jeśli masz pliki projektu zapisane w SVN lub gdzieś zapisane, po prostu usuń wszystkie lokalne zmiany i wróć do poprzedniej kopii roboczej. Odbuduj również pamięć podręczną przez Plik -> Unieważnij pamięć podręczną.

Po tym jest to dla mnie naprawione. Komunikat „Błąd: błąd wewnętrzny: (org.jdom.input.JDOMParseException)” zniknął.


1

Miałem ten sam problem, gdy Windows się zawiesił, gdy Android Studio było włączone. Wykonałem następujące kroki: -

  • Zamknij Android Studio
  • Usuń .ideakatalog poza folderem projektu. Uwaga: nie usuwaj .ideakatalogu w folderze projektu. .ideaKatalogu, który trzeba usuwać będzie zawierać pewne .imlpliki.
  • Uruchom ponownie Android Studio
  • tadaaa !!


  • 1

    Kilkakrotnie zauważyłem, że komunikat „Treść nie jest dozwolona w prologu” wyświetlany, gdy miałem plik XML z początkowymi spacjami przed deklaracjami typu xml lub doc na początku pliku.

    Miałem te same objawy i udało mi się rozwiązać ten problem, zamykając projekt i przeglądając każdy z plików XML w folderze projektu „.idea”. W moim przypadku stwierdziłem, że w jakiś sposób kilkaset wierszy wiodących białych znaków zostało dodanych do pliku „workspace.xml”. Usunąłem wiodące białe znaki z pliku, zrestartowałem IDEa i wszystko znowu działało.


    1

    W moim przypadku nic z tych nie zadziałało.

    Ale ostateczne rozwiązanie było bardzo łatwe:

     rm -r ~/Library/Preferences/AndroidStudio[X.X]/codestyles/

    0

    Jeśli używasz systemu kontroli wersji, takiego jak github, najłatwiejszym sposobem jest wymazanie folderu projektu, otwarcie IntelliJ i ponowne sklonowanie repozytorium. Każdy plik, który jest uszkodzony, zniknie i powinien znów działać dobrze.

    Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
    Licensed under cc by-sa 3.0 with attribution required.