Ошибка фиксации Eclipse EGit — причина: java.io.EOFException

Подробности ошибки ниже. Я только что установил на новый компьютер с Windows 7 и получаю эту ошибку при любой фиксации, сделанной в EGit. Я могу успешно зафиксировать с помощью оболочки Git Bash. Я проверил наличие обновлений для EGit, но ничего не нашел. Другие функции EGit, такие как pull и push, работают, но мне нужно выполнить коммит в оболочке Git.

Произошла внутренняя ошибка Исключение во время выполнения команды фиксации

Трассировка стека:

org.eclipse.jgit.api.errors.JGitInternalException: Exception caught during execution of commit command
    at org.eclipse.jgit.api.CommitCommand.call(CommitCommand.java:277)
    at org.eclipse.egit.core.op.CommitOperation.commit(CommitOperation.java:255)
    at org.eclipse.egit.core.op.CommitOperation.access$7(CommitOperation.java:233)
    at org.eclipse.egit.core.op.CommitOperation$1.run(CommitOperation.java:197)
    at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
    at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2326)
    at org.eclipse.egit.core.op.CommitOperation.execute(CommitOperation.java:207)
    at org.eclipse.egit.ui.internal.commit.CommitUI$2.run(CommitUI.java:220)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: java.io.EOFException: Input did not match supplied length. 239 bytes are missing.
    at org.eclipse.jgit.storage.file.ObjectDirectoryInserter.shortInput(ObjectDirectoryInserter.java:237)
    at org.eclipse.jgit.storage.file.ObjectDirectoryInserter.toTemp(ObjectDirectoryInserter.java:168)
    at org.eclipse.jgit.storage.file.ObjectDirectoryInserter.insert(ObjectDirectoryInserter.java:105)
    at org.eclipse.jgit.api.CommitCommand.createTemporaryIndex(CommitCommand.java:363)
    at org.eclipse.jgit.api.CommitCommand.call(CommitCommand.java:195)
    ... 8 more

Данные сеанса:

eclipse.buildId=M20120208-0800
java.version=1.6.0_32
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.rcp.product
Command-line arguments:  -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.rcp.product

Ага, нашел это на форуме сообщества Eclipse Egit с описанием почти идентичной проблемы: https://www.eclipse.org/forums/index.php/m/820938/?srch=eofexception#msg_820938

Решение состояло в том, чтобы установить последнюю ночную сборку для EGit и JGit отсюда: https://download.eclipse.org/egit/updates-nightly/


person Dean Thomsen    schedule 29.04.2012    source источник


Ответы (5)


Я решил свой случай, удалив файл index.lock из папки .git проекта.

person Bruno Pinto    schedule 16.07.2014

В моей Ubuntu 14.04 я установил jgit [ sudo apt-get install jgit-cli ], и проблема решена. После установки я перезапустил netbeans.

person Bennet Joseph    schedule 21.08.2015

Да, удалив файл index.lock из папки .git проекта, он работает правильно.

person Pallavi Singh    schedule 14.07.2016

Я решил это, изменив группу пользователей на текущего пользователя в Ubuntu 16.04. Надеюсь, это поможет.

cd каталог_проекта sudo chown -R 1000:1000 .

person Ramesh Mahajan    schedule 12.01.2018

Я фиксировал один файл за раз, пока не нашел поврежденный файл. В моем случае это был текстовый файл. я этого не делал

person José Luis Díaz Solís    schedule 08.09.2020