3


0

Eclipse PDTを使用したブレークポイントの設定

がっかりしました。 これはとても簡単に思えますが、DrupalとEclipse PDTの完全な初心者なので、どこを見ればいいのか全く分かりません。 私の検索日は、私がこの問題を抱えている地球上で唯一の人であることを示しているようです。

PHP開発者向けEclipse IDE(1.2.1.20090918-0703)WampServerバージョン2.0 Apache 2.2.11 PHP 5.2.9-2 MySQL 5.1.33 Drupal 6.15 xDebug php_xdebug-2.0.5-5.2.dll

Drupalディレクトリ(C:\ wamp \ www \ drupal-6.15)を指すようにEclipseでプロジェクトをセットアップします。 デバッガー(xdebug)を開始し、コードの最初の行で停止します。 コードを1行ずつステップ実行できます-デバッガーにいると思います。アプリを終了すると、タブの見出しにxdebug終了メッセージが表示されます。

しかし、PHPコードファイル(特に新しい.moduleファイル)にブレークポイントを設定することはできません。

index.php(メイン)の左側のブレークポイント列を右クリックすると、「トグルブレークポイント」とコード行の横にある小さな青い円が表示されるので、ブレークポイントの設定方法を知っていると思います。 しかし、.moduleにブレークポイントを設定しようとすると、「ブックマークの追加」を求めるメニューが表示され、ブレークポイントを設定するオプションは表示されません。

このファイルにブレークポイントを設定できないのはなぜですか? プロジェクトパスが正しく設定されていませんか? インクルードパスを修正する必要がありますか? サイト/すべてのモジュールだけでなく、コアモジュールもEclipseに認識させることはできません。 プロジェクトへのファイルの「インポート」に関する投稿を見て、xdebugの設定に正しいphp.iniファイルが使用されていることを確認しました。 道に迷いました。

Eclipst PDTとxDebugの使用についての投稿は非常に多く、それらはすべて「楽しいデバッグ」または「ブレークポイントを設定してすぐに行く」で終わりますが、ブレークポイントを設定できない場合はどうなりますか? Eclipseが失われた場所についてのアイデアはありますか? Eclipseのどこにビルドに含まれているファイルのリストを取得できますか?

Eclipseがプロジェクト内でこれらのモジュールを見つけることができない理由を理解する必要があると思います(つまり、 drupal application)パスを使用して、ブレークポイントを設定できます。 その後、私は続けることができると思います。 がっかり…​

聞いてくれてありがとう。

4 回答


3


先端をありがとう。 私はどこか別の投稿であなたの同じような反応を見たと思います。

実際、私にとっての解決策は、Eclipseファイルの関連付け設定にすべての標準Drupalファイル拡張子を含めるようにすることでした:Preferences→ General→ Content Types→ Text→ PHP Content Type。 デフォルトはさまざまな* .php、。phpX、。phtml拡張機能ですが、Drupalモジュールで使用されている拡張機能ではありません-* .info、。inc、。module、*。installなど

あなたがそれを理解したら、シンプルで明白です。 Eclipse-xDebug-Drupalのセットアップ手順のすべてに、これが表示されなかったことに驚いています。 プロジェクトパスとサーバーパスの一致に関する詳細はたくさんありますが、これについては何もありません。

私の闘争が誰かを助けることを願っています。 途中でEclipse PDTについて多くのことを学びました:-)。 がんばろう。


1


PDTプロジェクトではブレークポイントは扱いにくいものです。

_ 私に多くのことをもたらすのは、ブレークポイントを設定する「無効な」場所がたくさんあるということです。 IDE内にドットを配置できますが、デバッガーはそれで停止しません。 _

  • 空白行/非コード行

  • switchステートメント

  • 一部のタイプのコールバック(たとえば、preg_replace)

しかし、 `.module`ファイル内のブレークポイントの場合、これはhttp://dev.eclipse.org/newslists/news.eclipse.tools.pdt/msg00897.html [セットアップの問題に関連]である必要があります。

_ _ セットアップに次の変更を加えました。

  • php 5.2.1からphp 5.2.3にアップグレードされました

  • Eclipse / PDTにZendデバッガークライアントをインストールしました(理論的には 私の理解から必要ですが、試してみることにしました)

  • * Drupalファイルがプロジェクトに完全にインポートされたことを確認し、 インクルードライブラリとして参照されるだけではありません。*

小さなテストケースを作成し、そのファイルがプロジェクトのインクルードの一部として参照された場合ではなく、プロジェクトにインポートされた場合にのみ、デバッガーを外部インクルードファイルのブレークポイントで停止できることを発見した後、私はその最後のステップを行いましたライブラリディレクトリ。 +私の考えでは、これはバグのように見えます-デバッガーは、インクルードライブラリディレクトリ内のファイルがソースファイルであることを確認でき、それらにブレークポイントを設定できるので、それらで停止する必要があるようです。 +(別の(java)IDEからの比較のために、IntelliJでは、ソースの場所を指定する限り、jarファイルにブレークポイントを定義できます。 定義すると、停止します。)

*私は主にその最後のステップがトリックを行ったと思う*ので、同様の問題を抱えている他の誰かが最初にセットアップの問題ではないことを確認してから、他のステップを試してみることをお勧めします。 _ _


1


JavaエディターモードでJavaファイルを開いたかどうかを確認します。 つまり、ctrl + shift + Rの場合、このポップアップで[開く]オプションの横にあるボタンをチェックし、Javaエディターを選択します。


0


最近ファイルを作成した場合、ブレークポイントを設定できないという問題が発生する可能性があります。 デバッグ可能なソースファイルとして認識され、コードの強調表示を有効にするには、ファイルを閉じて再度開く必要があります。