[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以外でも同様の問題が出ると思われるが、対処法は同じ。