Estava enfrentando um problema com o Eclipse (na verdade com o ZendStudio, o qual é baseado no Eclipse) no qual, quando eu digitava uma expressão em php tal como “$this->”, ao invés de ele me sugerir as variáveis já instanciadas no arquivo, ou mesmo os métodos, era exibido “no dafault proposals” ou “no template proposals”. Como resolver isso e voltar a exibir as sugestões de variáveis ou métodos?
Penei muito mas, graças ao StackOverflow eu descobri!
O usuário Edward Tanguay teve o mesmo problema que eu. Vou explicar o que eu tive que fazer. Talvez você só precise fazer o primeiro passo ou talvez, como eu, fazer o segundo passo também.
Provavelmente se você criar novos projetos no Eclipse (ou no ZendStudio) o autocomplete ou sugestões estarão funcionando. Uma dica que eu dou: compare os seguintes arquivos nos dois projetos (no que funciona e no que não funciona): .project e .buildpath. Veja se eles estão exatamente iguais (excetuando-se o nome do projeto). Talvez você possa simplesmente copiar e colocar o conteúdo do que está funcionando para o que não está (só cuide para não alterar o nome do projeto para o do qual você está copiando. Esses dois arquivos provavelmente estarão ocultos (eles se encontram na raiz do seu projeto). Basta alterar a configuração de seu sistema operacional para que eles comecem a ser exibidos. Você poderá edita-los utilizando um editor de textos comum. Vamos aos passos mais simples!
Primeira Opção
O usuário Guido García postou o seguinte comentário (que foi escolhido como a resposta que funcionou):
————
Talvez o Eclipse não entenda que o projeto tenha uma Natureza PHP (“PHP nature”). Tente comparar o arquivo .project nos dois projetos [um que funcione e um que não funcione] para ver as diferenças. Deverá conter algo tal como:
<natures>
<nature>org.eclipse.php.core.PHPNature</nature>
</natures>
O arquivo .project estará na sua workspace no diretório do projeto.
————–
Feche o Eclipse ou ZendStudio e inicie novamente.
Segunda Opção
Para mim, só seguir o passo a cima não funcionou. Tive que seguir em conjunto a resposta do usuário parham também.
————
Veja o arquivo .buildpath em seu projeto… coloque essa linha entre a tag:
< buildpathentry kind="con" path="org.eclipse.php.core.LANGUAGE"/>
Salve e reinicie o Eclipse. Agora tudo deverá estar OK… Isso funcionou para mim. 🙂
————
Assim como funcionou para parham, funcionou para mim também! Segue abaixo a referência no StackOverflow. Se isso não funcionou para você, vá lá que você achará outras respostas que talvez funcione. Ahhh… e por favor, se gostou do artigo e pude te ajudar, dá uma curtida no post, dá um baita incentivo. Até mais!
Referência
- StackOverflow. Disponível em: http://stackoverflow.com/questions/177569/why-does-eclipse-code-completion-not-work-on-some-projects. Acesso em 02/04/2015.