Intellij IDEA çöktü ve şimdi bir hata veriyor


103

Intellij IDEA'da çalışıyorum, ancak bilgisayarım donuyor, bu yüzden bilgisayarımı kapatıyorum. (uzun tıklama güç düğmesi) Bilgisayarı açıp IntelliJ IDEA'yı başlattığımda şu hatayı aldım:

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

IDEA'yı kapatıyorum ve tekrar başlıyorum, şimdi önceki hatam yok, ancak projemi açtığımda şu hatayı alıyorum:

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)

Bu sorunu nasıl çözebilirim?


XML dosyasındaki kodlamayı kontrol edin. Hata, kötü kodlamanın sonucu olduğunu gösterir - yani olmaması gereken yerde bir bayt sırası işareti.
Makoto

Bu sorun, Android Studio'da başlatıldığında yeni SDK sürümlerini zorla kontrol etmeye çalıştığında ortaya çıkar. Bunu düzeltmek için kesinlikle yapılabilecek hiçbir şey yok.
IgorGanapolsky

Yanıtlar:


208

Bu cevap hem IntelliJ hem de AndroidStudio için çalışıyor

Projenizi IntelliJ [AndroidStudio] 'da açamıyorsanız bile:

  • IntelliJ [AndroidStudio] 'yu kapatın
  • <your_home> /.IntelliJIdeaXX[.AndroidStudioXX]/system/cache dizinine gidin .

    NEREDE

    • <ev_eviniz>

      • Windows Kullanıcıları: C:\Users\<**Your User**>\(veya %USERPROFILE%)
      • Linux Kullanıcıları (Ubuntu), Mac: ~/
    • XX, IntelliJ sürümünüzdür (Bu dizin, bazı sürümlerde "önbelleklerdir".)

  • Önbellek dizinindeki tüm dosyaları kaldırın.
  • Ardından IntelliJ [AndroidStudio] 'yu yeniden başlatın

Bu geçmişte benim için çalıştı.


3
Ev nedir Projelerin bulunduğu çalışma alanı? Program dosyalarında Android Studio / Android /? veya Kullanıcılar / KullanıcıAdı / AndroidStudio'daki Android Studio klasörü?
Andrew S

2
Kullandığınız işletim sistemine bağlıdır. Örneğin, Windows 7'de bir kullanıcının varsayılan ana dizini c: \ Users \ <login_user_name> şeklindedir. Linux için "echo $ HOME"
komutunu

Bu kesinlikle işe yarar, ancak bunun Intellij'inizdeki ayarlarınızı (yazı tipleri, biçimlendirme ayarları vb.) Sıfırlayacağını unutmayın. Neyse ki, bu ayarları ilk değiştirdiğinizde bir şema oluşturmanız gerektiğinden ve bu şema hala mevcut olduğundan, bunları kolayca ayarlara geri getirebilirsiniz.
NecipAllef

Fikir 13'te, "önbellek" dizini artık "önbellekler" olmuştur - oradaki her şeyi kaldırmak hala işe yarar.
Yann

Bu klasör onu içermiyor. [macbook_tcs] ---> [/ Kullanıcılar / timsiwula /] $ cd ~ / .IntelliJIdea15 / [macbook_tcs] ---> [/Users/timsiwula/.IntelliJIdea15/]$ ls -la toplam 0 drwxr-xr-x 3 timsiwula staff 102 Haz 12 10:57. drwxr-xr-x + 105 timsiwula personeli 3570 6 Kasım 23:47 .. drwxr-xr-x 3 timsiwula personeli 102 Ekim 7 22:37 yeniden başlatma [macbook_tcs] ---> [/Users/timsiwula/.IntelliJIdea15/]$
timxor

69

çözümüm

In project/.ideaben kırdım workspace.xmldosyayı. Sadece Android Studio'yu (Intellij IDEA) kapatıyorum, bu dosyayı kaldırıyorum ve Android Studio'yu başlatıyorum.

Diğer tüm yaklaşımlar benim için işe yaramıyor.


İyi çalıştı! Ancak SDK'ları tekrar eklemek zorunda kaldı.
WeirdElfB0y


12

Aynı sorunu yaşadım, .idea dizinini ve * .iml dosyalarını kaldırdım ve projeyi yeniden oluşturdum.


proje dosyalarının bulunduğu işletim sistemi gezgininden
Hossein

2
  1. .İdea klasöründe birçok XML dosyası bulunur.

  2. Bu hata, bazı XML dosyaları geçersizse ortaya çıkar.

  3. Öncelikle workspace.xml dosyasının geçerli olup olmadığını kontrol edin.

  4. Workspace.xml dosyası geçerliyse, diğer dosyaların.


2

Benim durumumda .idea altındaki proje dosyaları bozuldu. Proje dosyalarını SVN'de kontrol ettiyseniz veya bir yere kaydettiyseniz, sadece tüm yerel değişiklikleri kaldırın ve önceki çalışma kopyasına geri dönün. Ayrıca önbelleği Dosya -> Önbelleği Geçersiz Kıl ile yeniden oluşturun.

Bundan sonra benim için düzeltildi. "Hata: Dahili hata: (org.jdom.input.JDOMParseException)" kayboldu.


1

Android Studio açıkken Windows çöktüğünde de aynı sorunu yaşadım. Aşağıdaki adımları takip ettim: -

  • Android Studio'yu kapatın
  • .ideaProje klasörünün dışındaki dizini silin . Not:.idea Proje klasörü içindeki dizini silmeyin . .ideaSilmek zorunda dizin bazı içerecektir .imldosyaları.
  • Android Studio'yu yeniden başlatın
  • tadaaa !!


  • 1

    Dosyanın başlangıcında xml veya doc türü bildirimlerinin önünde boşluklar bulunan bir XML dosyam olduğunda, "içeriğe önsözde izin verilmiyor" ifadesinin sunulduğunu birkaç kez gördüm.

    Aynı belirtilere sahiptim ve projeyi kapatıp proje ".idea" klasöründeki her bir XML dosyasını gözden geçirerek çözebildim. Benim durumumda, "workspace.xml" dosyasına bir şekilde birkaç yüz satırlık boşluk eklendiğini buldum. Baştaki beyaz boşluğu dosyadan kaldırdım, IDEa'yı yeniden başlattım ve her şey tekrar çalıştı.


    1

    Benim durumumda bunlardan hiçbiri işe yaramadı.

    Ancak nihai çözüm çok kolaydı:

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

    0

    Github gibi bir sürüm kontrol sistemi kullanıyorsanız, en kolay yol proje klasörünüzü silmek, IntelliJ'i açmak ve deponuzu tekrar klonlamaktır. Hangi dosya bozuk olursa olsun gitmiş olacak ve tekrar düzgün çalışması gerekir.

    Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
    Licensed under cc by-sa 3.0 with attribution required.