3

私はすっごく落胆しています。これは非常に単純に思えますが、Drupal と Eclipse PDT の完全な初心者である私には、どこを見ればよいかまったくわかりません。私の DAYS の検索は、この問題を抱えているのは地球上で私だけであることを示しているようです。

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 アプリケーション) パス内でこれらのモジュールを見つけられない理由を理解する必要があると思います。それなら続けられると思います。とても落胆...

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

4

4 に答える 4

3

ヒントをありがとう。どこかの別の投稿で同様の回答を見たと思います。

実際、私にとっての解決策は、標準の Drupal ファイル拡張子をすべて Eclipse ファイルの関連付け設定に含めることでした: [設定] -> [一般] -> [コンテンツ タイプ] -> [テキスト] -> [PHP コンテンツ タイプ]。デフォルトは、さまざまな *.php、*.phpX、*.phtml 拡張子ですが、Drupal モジュールで使用される拡張子 (*.info、*.inc、*.module、*.install など) ではありません。

ひとたび理解すれば、単純明快です。Eclipse-xDebug-Drupal のセットアップ手順がすべて表示されていないことに驚いています。プロジェクトパスとサーバーパスの一致に関する詳細はたくさんありますが、これについては何もありません。

私の闘いが誰かの役に立てば幸いです。途中でEclipse PDTについて多くのことを学びました:-)。幸運を。

于 2010-01-17T14:43:48.810 に答える
1

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

于 2014-09-16T09:15:07.537 に答える
1

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

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

  • 空白/非コード行
  • switch ステートメントで
  • 一部のタイプのコールバック (preg_replace など)

ただし、ファイル内のブレークポイントの場合、これはセットアップの問題に関連している.moduleはずです。

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

  • PHP 5.2.1 から PHP 5.2.3 にアップグレード
  • Eclipse/PDT に Zend デバッガー クライアントをインストールしました (理論的には、私が理解していることからは必要ありませんが、試してみることにしました)。
  • Drupal ファイルがインクルード ライブラリとして参照されるだけでなく、プロジェクトに完全にインポートされていることを確認しました。

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

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

于 2010-01-17T07:39:54.560 に答える
0

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

于 2011-01-05T11:23:22.863 に答える