[PHP] Eclipse PDTの入力補完がきかなくなった場合の対処法

PDTを使っていると、動作が遅くなったり、突然、コードの入力補完がきかなくなったりする場合がある。

原因の大半は、PHPなど動的言語の開発環境を構築するためのシステムである「DLTK」用のデータベースファイルが壊れてしまっているため。

ワークスペースの「.metadata\.plugins\org.eclipse.dltk.core.index.sql.h2」ディレクトリを見ると、「model.index.db」ファイルが場合によっては数GBに達している。

対処法

「.metadata\.plugins\org.eclipse.dltk.core.index.sql.h2」ディレクトリ内のすべてのファイルを削除する。

全削除しても、Eclipseの動作にはなんら問題はない。

単に入力補完が改善されるだけでなく、PDTの動作が全般的に速くなることもある。

現状

「DLTK問題」として以前から知られている不具合だが、未だに改善されていない。

DLTKはPDTだけでなくRubyやPythonの開発環境でも使われているので、おそらくPDT以外でも同様の問題が出ると思われるが、対処法は同じ。

PHP

Posted by takasho