Eclipse 打开问题

问题描述 投票:0回答:1

我一直在尝试在 Linux 机器上通过 SSH 打开 eclipse,但我不断收到此错误。我尝试清理磁盘空间并使用 -clean 标志运行 eclipse,但没有成功。我在下面包含了堆栈跟踪,以防它有助于调试我的问题。

java.lang.IllegalArgumentException: Buffer size <= 0
at java.io.BufferedInputStream.<init>(BufferedInputStream.java:201)
at org.eclipse.osgi.framework.internal.reliablefile.ReliableFile.getInputStream(ReliableFile.java:272)
at org.eclipse.osgi.framework.internal.reliablefile.ReliableFileInputStream.<init>(ReliableFileInputStream.java:92)
at org.eclipse.osgi.framework.internal.reliablefile.ReliableFileInputStream.<init>(ReliableFileInputStream.java:66)
at org.eclipse.osgi.storagemanager.StorageManager.updateTable(StorageManager.java:487)
at org.eclipse.osgi.storagemanager.StorageManager.open(StorageManager.java:708)
at org.eclipse.osgi.storage.Storage.getChildStorageManager(Storage.java:1749)
at org.eclipse.osgi.storage.Storage.getInfoInputStream(Storage.java:1766)
at org.eclipse.osgi.storage.Storage.<init>(Storage.java:126)
at org.eclipse.osgi.storage.Storage.createStorage(Storage.java:85)
at org.eclipse.osgi.internal.framework.EquinoxContainer.<init>(EquinoxContainer.java:75)
at org.eclipse.osgi.launch.Equinox.<init>(Equinox.java:31)
at org.eclipse.core.runtime.adaptor.EclipseStarter.startup(EclipseStarter.java:295)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:231)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
at org.eclipse.equinox.launcher.Main.main(Main.java:1438)
java eclipse ide editor
1个回答
0
投票

当我收到该错误时,我正在远程 Linux 计算机上工作,常见的补救措施(例如使用 -clean 参数调用 eclipse 或将特定的 java 版本作为虚拟机,如 -vm 参数)对我不起作用。 我注意到这个错误报告: https://bugs.eclipse.org/bugs/show_bug.cgi?id=579032

并记得我在上次 Eclipse 退出时收到了“超出磁盘配额”的警报。所以我删除了根目录中的所有大文件,但这还不够。我必须找到所有零大小的文件并创建这些文件的一些虚拟版本。 所以首先,我通过搜索空文件(但不是进入 ./.snapshot 文件夹)来创建一个文件,只是为了 eclipse:

find . -size 0 -type f ! -path './.snapshot' | grep -E "workspace|eclipse" > zerofiles.txt

然后我尝试填充一些字节,至少让 Eclipse 重新开始。

while read p; do
  echo ${p}
  echo "dummy" >> ${p}
done <zerofiles.txt

然后我调用了 eclipse -clean 并恢复了我的程序!

© www.soinside.com 2019 - 2024. All rights reserved.