web-dev-qa-db-ja.com

NetBeans PHP独自のコードのコード補完

最近、私は NetBeans 6.7 beta for PHP開発の代わりに Textmate and MacGDBp を使い始めました。私はかなり驚いています機能セットがあり、ほとんどすべてが箱から出して動作するか、私の好みに合わせて簡単に構成できます。

ただし、コード補完機能に問題があります。それらは組み込み関数 [〜#〜] spl [〜#〜] と私のコードの一部で機能しますが、私のコードのすべてではありません。具体的には、クラスのどのメソッドでも機能しません。 、PHPDocコメントに関係なく。

この特定の主題についての答えは言うまでもなく、まともな質問をどこにも見つけることができないようです。コードの補完に問題がある他のすべての人が、自動ポップアップ機能を有効にしていないようです。

つまり、大きな問題は:

コード完了キャッシュに影響を与える方法、またはコードを機能させるためにコードに追加する必要があるものはありますか?自分が書いたメソッドのコードを完成させたいのですが。

[〜#〜] ps [〜#〜]:いくつかの古いバージョンのnetbeansを試しましたが、すべて同じ問題が発生します。

edit:現在のテストプロジェクトの.Zipアップを配置しました。 ここで入手 。これは非常に若いプロジェクトです。1日半考えてみてください。

edit2:以下は私が見ているもののスクリーンショットです。ご覧のとおり、ほとんど何も完了できず、PHPDocのドキュメントも表示されません。

alt text

26
Kris

私はあなたのプロジェクトを開こうとしました、そして完了は私にとってうまく働いているようです。

私が考えることができる唯一のことは、あなたのNBキャッシュ全体を削除しようとすることです。これは、$HOME/.netbeans/$VERSION/var/cache/にあるはずです。これは大げさな推測です。

最初にバックアップを作成します、私はこれを試しませんでした!

それが失敗した場合は、新しいプロジェクトを作成してみてください。おそらく、NBがお尻になります。

NB 7.2ベータ版では、キャッシュは$ HOME/.cache/netbeans/$ VERSIONに移動したことに注意してください。

42

私のために働いたのは、古いnbprojectフォルダー(Windowsで作成された)を削除し、既存のソースからPHPプロジェクトを再作成することでした。これはNB 7.0にあります。 1 MacOSX。キャッシュのクリアが機能しませんでした。

2
Jonathan

@property something構文に注意してください。オブジェクトsomethingがコードに存在しなくなった場合、NetBeansでコードの適切な完了に問題が発生する可能性があります。例を考えてみましょう:

/** in main file: **/

use ABC as _ ;

/** in file ABC: **/

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

$somethingを使用しなくなった場合、NetBeansは例外を生成する可能性が高く、コードの完了に失敗します。

2
Michał Pilch

私にとってうまくいったのは、キャッシュをクリアしてから、グローバルインクルードパスにいくつかの主要なサブディレクトリを明示的に含めることでした。何らかの理由でNB 6.7はディレクトリを再帰していなかったようです。

プロジェクトレベルで含めることも機能しましたプロジェクト->プロパティ->パスNetbeans7.01 + Windows7を含める

2

たとえば、プロジェクトに参加せずにnetbeansを使用してphpファイルを開いた場合、コードの完了はまったく機能しません。あなたがする必要があるのは、そのファイルを含むプロジェクトを作成することです。

NetBeans7.0.1でこれをテストしました

1
Catalin