Intellij IDEA bị lỗi và hiện gặp lỗi


103

Tôi làm việc trong Intellij IDEA, nhưng máy tính của tôi bị treo nên tôi tắt máy tính của mình. (nút nguồn nhấp lâu) Khi tôi bật máy tính và khởi động IntelliJ IDEA, tôi gặp lỗi này:

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

Tôi đóng IDEA và bắt đầu lại, bây giờ tôi không gặp lỗi trước đó, nhưng khi tôi mở dự án của mình, tôi gặp lỗi này:

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)

Làm cách nào để khắc phục sự cố này?


Kiểm tra mã hóa trên tệp XML. Lỗi này gợi ý rằng đó là kết quả của việc mã hóa không tốt - cụ thể là, một dấu thứ tự byte ở vị trí không đáng có.
Makoto

Sự cố này xảy ra trong Android Studio khi nó cố gắng kiểm tra các phiên bản SDK mới khi khởi chạy. Hoàn toàn không có gì ai có thể làm để sửa chữa nó.
IgorGanapolsky

Câu trả lời:


208

Câu trả lời này hoạt động cho cả IntelliJ và AndroidStudio

Nếu bạn thậm chí không thể mở dự án của mình trong IntelliJ [AndroidStudio]:

  • Đóng IntelliJ [AndroidStudio]
  • Đi tới thư mục <your_home> /.IntelliJIdeaXX[.AndroidStudioXX]/system/cache

    Ở ĐÂU

    • <your_home> là

      • Người dùng Windows: C:\Users\<**Your User**>\(hoặc%USERPROFILE% )
      • Người dùng Linux (Ubuntu), Mac: ~/
    • XX là phiên bản IntelliJ của bạn (Thư mục này là "bộ nhớ đệm" trong một số phiên bản.)

  • Xóa tất cả các tệp trong thư mục bộ nhớ cache.
  • Sau đó khởi động lại IntelliJ [AndroidStudio]

Điều này đã làm việc cho tôi trong quá khứ.


3
Nhà là gì? Không gian làm việc nơi đặt các dự án? Android Studio trong tệp chương trình / Android /? hay thư mục Android Studio trong Users / UserName / AndroidStudio?
Andrew S

2
Nó phụ thuộc vào hệ điều hành bạn đang sử dụng. Ví dụ: thư mục chính mặc định của người dùng trong Windows 7 là c: \ Users \ <login_user_name>. Đối với Linux, hãy chạy "echo $ HOME"
Ask613

Điều này chắc chắn hoạt động, nhưng hãy lưu ý rằng điều này sẽ đặt lại cài đặt của bạn (phông chữ, cài đặt định dạng, v.v.) trong Intellij của bạn. May mắn thay, bạn có thể dễ dàng lấy lại chúng trong cài đặt vì khi bạn thay đổi các cài đặt này lần đầu tiên, bạn phải tạo một lược đồ và lược đồ đó vẫn tồn tại.
NecipAllef

Trong ý tưởng 13, thư mục "cache" bây giờ là "caches" - xóa mọi thứ trong đó vẫn hoạt động.
Yann

Thư mục đó không chứa nó. [macbook_tcs] ---> [/ Users / timsiwula /] $ cd ~ / .IntelliJIdea15 / [macbook_tcs] ---> [/Users/timsiwula/.IntelliJIdea15/]$ ls -la tổng 0 drwxr-xr-x 3 nhân viên timsiwula 102 12 tháng 6 10:57. drwxr-xr-x + 105 nhân viên timsiwula 3570 ngày 6 tháng 11 23:47 .. drwxr-xr-x 3 nhân viên timsiwula 102 ngày 7 tháng 10 22:37 khởi động lại [macbook_tcs] ---> [/Users/timsiwula/.IntelliJIdea15/]$
timxor

69

giải pháp của tôi

Trong project/.ideatôi có workspace.xmltập tin bị hỏng . Tôi vừa đóng Android Studio (Intellij IDEA), xóa tệp này và khởi động Android Studio.

Tất cả các cách tiếp cận khác không hiệu quả với tôi.


Làm việc tốt! Nhưng phải thêm lại các SDK.
WeirdElfB0y


12

Tôi đã gặp vấn đề tương tự, tôi đã xóa thư mục .idea và các tệp * .iml và tạo lại dự án.


từ trình khám phá hệ điều hành, nơi chứa các tệp dự án
Hossein

2
  1. Trong thư mục .idea, có nhiều tệp XML.

  2. Lỗi này xảy ra nếu một số tệp XML không hợp lệ.

  3. Đầu tiên hãy kiểm tra tệp workspace.xml có hợp lệ hay không.

  4. Nếu tệp workspace.xml hợp lệ thì hãy kiểm tra tệp khác.


2

Trong trường hợp của tôi, các tệp dự án dưới .idea đã bị hỏng. Nếu bạn đã kiểm tra tệp dự án trong SVN hoặc được lưu ở đâu đó, chỉ cần xóa tất cả các thay đổi cục bộ và hoàn nguyên về bản sao làm việc trước đó. Đồng thời xây dựng lại bộ nhớ cache bằng Tệp -> Không hợp lệ bộ nhớ cache.

Sau đó nó được sửa cho tôi. Đã biến mất "Lỗi: Lỗi nội bộ: (org.jdom.input.JDOMParseException)".


1

Tôi gặp sự cố tương tự khi Windows gặp sự cố trong khi Android Studio đang bật. Tôi đã làm theo các bước sau: -

  • Đóng Android Studio
  • Xóa .ideathư mục bên ngoài thư mục dự án. Lưu ý: Không xóa .ideathư mục bên trong thư mục dự án. Thư mục .ideamà bạn phải xóa sẽ chứa một số.iml tệp.
  • Khởi động lại Android Studio
  • tadaaa !!


  • 1

    Tôi đã nhiều lần phát hiện thấy rằng "Nội dung không được phép trong phần mở đầu" được trình bày khi tôi có một tệp XML có khoảng trắng ở đầu phía trước khai báo loại xml hoặc doc ở đầu tệp.

    Tôi gặp phải các triệu chứng tương tự và có thể giải quyết bằng cách đóng dự án và xem qua từng tệp XML trong thư mục ".idea" của dự án. Trong trường hợp của tôi, tôi thấy rằng bằng cách nào đó, vài trăm dòng khoảng trắng ở đầu đã được thêm vào tệp "workspace.xml". Tôi đã xóa khoảng trắng hàng đầu khỏi tệp, khởi động lại IDEa và mọi thứ hoạt động trở lại.


    1

    Trong trường hợp của tôi, không có gì trong số này hoạt động.

    Nhưng giải pháp cuối cùng rất dễ dàng:

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

    0

    Nếu bạn đang sử dụng hệ thống kiểm soát phiên bản như github, cách dễ nhất là xóa thư mục dự án của bạn, mở IntelliJ và sao chép lại kho lưu trữ của bạn. Bất kỳ tệp nào bị hỏng sẽ biến mất và nó sẽ hoạt động tốt trở lại.

    Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
    Licensed under cc by-sa 3.0 with attribution required.