Intellij IDEA si è arrestato in modo anomalo e ora genera un errore


103

Lavoro in Intellij IDEA, ma il mio computer si blocca, quindi lo spengo. (pulsante di accensione a lungo clic) Quando ho acceso il computer e ho avviato IntelliJ IDEA ho riscontrato questo errore:

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

Chiudo IDEA e ricomincio, ora non ho l'errore precedente, ma quando apro il mio progetto ho questo errore:

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)

Come posso risolvere questo problema?


Controlla la codifica nel file XML. L'errore suggerisce che è il risultato di una cattiva codifica , vale a dire, un contrassegno dell'ordine dei byte che si trova dove non dovrebbe essere.
Makoto

Questo problema si verifica in Android Studio quando tenta di forzare il controllo delle nuove versioni dell'SDK all'avvio. Non c'è assolutamente nulla che si possa fare per risolverlo.
IgorGanapolsky

Risposte:


208

Questa risposta funziona sia per IntelliJ che per AndroidStudio

Se non riesci nemmeno ad aprire il tuo progetto in IntelliJ [AndroidStudio]:

  • Chiudi IntelliJ [AndroidStudio]
  • Vai alla directory <your_home> /.IntelliJIdeaXX[.AndroidStudioXX”/system/cache

    DOVE

    • <your_home> è

      • Utenti Windows: C:\Users\<**Your User**>\(o %USERPROFILE%)
      • Utenti Linux (Ubuntu), Mac: ~/
    • XX è la tua versione di IntelliJ (questa directory è "cache" in alcune versioni.)

  • Rimuovi tutti i file nella directory della cache.
  • Quindi riavvia IntelliJ [AndroidStudio]

Questo ha funzionato per me in passato.


3
Cos'è la casa? Lo spazio di lavoro in cui si trovano i progetti? Android Studio nei file di programma / Android /? o la cartella Android Studio in Users / UserName / AndroidStudio?
Andrew S

2
Dipende dal sistema operativo in uso. Ad esempio, la home directory predefinita di un utente in Windows 7 è c: \ Users \ <login_user_name>. Per Linux eseguire "echo $ HOME"
Ask613

Funziona sicuramente, ma tieni presente che questo ripristinerà le tue impostazioni (caratteri, impostazioni di formattazione, ecc.) Nel tuo Intellij. Fortunatamente, puoi ripristinarli facilmente nelle impostazioni poiché quando hai modificato per la prima volta queste impostazioni dovevi creare uno schema e quello schema esiste ancora.
NecipAllef

Nell'idea 13, la directory "cache" ora è "cache" - la rimozione di tutto ciò che contiene funziona ancora.
Yann

Quella cartella non lo contiene. [macbook_tcs] ---> [/ Users / timsiwula /] $ cd ~ / .IntelliJIdea15 / [macbook_tcs] ---> [/Users/timsiwula/.IntelliJIdea15/”$ ls -la total 0 drwxr-xr-x 3 timsiwula staff 102 Jun 12 10:57. drwxr-xr-x + 105 timsiwula staff 3570 Nov 6 23:47 .. drwxr-xr-x 3 timsiwula staff 102 ott 7 22:37 riavvio [macbook_tcs] ---> [/Users/timsiwula/.IntelliJIdea15/”$
timxor

69

la mia soluzione

In project/.ideaho workspace.xmlfile rotto . Chiudo semplicemente Android Studio (Intellij IDEA), rimuovo questo file e avvio Android Studio.

Tutti gli altri approcci non funzionano per me.


Ha funzionato bene! Ma ho dovuto aggiungere di nuovo gli SDK.
WeirdElfB0y


12

Ho avuto lo stesso problema, ho rimosso la directory .idea ei file * .iml e ho creato di nuovo il progetto.


dall'OS Explorer, dove si trovano i file di progetto
Hossein

2
  1. Nella cartella .idea sono presenti molti file XML.

  2. Questo errore si verifica se alcuni file XML non sono validi.

  3. Per prima cosa controlla che il file workspace.xml sia valido o meno.

  4. Se il file workspace.xml è valido, controlla gli altri file.


2

Nel mio caso, i file di progetto sotto .idea sono stati danneggiati. Se i file di progetto sono archiviati in SVN o salvati da qualche parte, rimuovi tutte le modifiche locali e ripristina la copia di lavoro precedente. Ricostruisci anche la cache tramite File -> Invalidate Cache.

Dopo di che è stato risolto per me. "Errore: errore interno: (org.jdom.input.JDOMParseException)" è scomparso.


1

Ho avuto lo stesso problema quando Windows si è bloccato mentre Android Studio era acceso. Ho seguito i seguenti passaggi: -

  • Chiudi Android Studio
  • Elimina la .ideadirectory all'esterno della cartella del progetto. Nota: non eliminare la .ideadirectory all'interno della cartella del progetto. La .ideadirectory che devi eliminare conterrà alcuni .imlfile.
  • Riavvia Android Studio
  • tadaaa !!


  • 1

    Ho riscontrato in diverse occasioni che "Il contenuto non è consentito nel prologo" presentato quando avevo un file XML con spazi iniziali davanti alle dichiarazioni di tipo xml o doc all'inizio del file.

    Ho avuto gli stessi sintomi e sono stato in grado di risolverlo chiudendo il progetto e passando attraverso ciascuno dei file XML nella cartella ".idea" del progetto. Nel mio caso, ho scoperto che in qualche modo alcune centinaia di righe di spazi bianchi iniziali erano state aggiunte al file "workspace.xml". Ho rimosso lo spazio bianco iniziale dal file, riavviato IDEa e tutto ha funzionato di nuovo.


    1

    Nel mio caso niente di questi ha funzionato.

    Ma la soluzione finale è stata molto semplice:

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

    0

    Se stai utilizzando un sistema di controllo della versione come github, il modo più semplice è cancellare la cartella del progetto, aprire IntelliJ e clonare nuovamente il tuo repository. Qualunque file sia danneggiato sarà sparito e dovrebbe funzionare di nuovo correttamente.

    Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
    Licensed under cc by-sa 3.0 with attribution required.