Pergunta

Recentemente eu comecei a usar NetBeans 6.7 beta para desenvolvimento de PHP em vez de Textmate e MacGDBp . Estou bastante surpreendido com o seu conjunto de recursos e mais tudo trabalhou fora da caixa, ou foi facilmente configurado para o meu gosto.

Estou tendo um problema com a conclusão de código apresenta embora; eles trabalham para funções internas, SPL e alguns de meu código, mas não todos do meu código, especificamente, isso nunca funciona por quaisquer métodos em minhas aulas, independentemente dos comentários PHPDoc.

Eu não consigo encontrar quaisquer dúvidas decentes, vamos respostas sozinho sobre isso em qualquer lugar assunto específico. Parece que todo mundo que tem problemas com a conclusão de código simplesmente não permitiu o recurso de auto-popup.

Então, a grande questão é:

Existe qualquer maneira para influenciar o cache de conclusão de código, ou algo que eu tenho a acrescentar ao meu código para fazê-lo funcionar? Eu realmente gostaria de ter a conclusão do código para os métodos que eu escrevo.

PS :. Tentei várias versões mais antigas do netbeans, todos eles apresentam o mesmo problema

Editar : Eu coloquei um arquivo .zip para cima do meu projeto de teste atual. obtê-lo aqui . É um projeto muito jovem, acho que um dia e meio.

edit2 : Abaixo está uma imagem do que eu estou olhando. Como você pode ver, ele não consegue completar praticamente qualquer coisa, nem ver a documentação PHPDoc.

text alt

Foi útil?

Solução

Eu tentei abrir seu projeto, ea conclusão parece estar funcionando muito bem para mim.

A única coisa que posso pensar é tentar apagar o cache NB inteira, que deve estar localizado em $HOME/.netbeans/$VERSION/var/cache/. Esta é uma suposição selvagem

Criar um backup primeiro , eu não tentar isso!

Se isso não funcionar, talvez você deve tentar criar um novo projeto, talvez isso vai chutar NB na bunda.

Note que no NB 7.2 beta, o cache mudou-se para $ HOME / .cache / netbeans / $ VERSÃO.

Outras dicas

O que funcionou para mim foi apagar a pasta nbproject de idade (que foi criado no Windows) e recriando o projeto PHP a partir de fontes existentes. Esta é a NB 7.0.1 Mac OS X. limpar o cache não funcionou para mim.

Esteja ciente da sintaxe @property something. Se o objeto algo não existe no seu código mais, NetBeans pode ter problemas com a conclusão de código adequado. Veja o exemplo:

/** in main file: **/

use ABC as _ ;

/** in file ABC: **/

/** 
  *  @property \Something $something
  */

Se você não usar $something mais, NetBeans provavelmente irá gerar uma exceção, falhando assim para completar o código.

O que funcionou para mim foi a limpeza do cache, em seguida, incluindo explicitamente alguns subdiretórios chave no Mundial caminho de inclusão. Parece que, por algum motivo NB 6,7 não foi recursing os diretórios.

incluindo a nível de projecto também trabalhou Projeto-> Propriedades-> Incluir Path Netbeans 7,01 + Windows 7

Se, por exemplo, você abre um arquivo php com netbeans sem ser parte de um projeto, a conclusão de código não funciona em todos. O que você precisa fazer é criar um projeto que tem esse arquivo na mesma.

Testado isso no NetBeans 7.0.1

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top