0

Zend FrameworkプロジェクトのNetBeansデバッグを設定できる人はいますか?XAMPPを自分のマシンでローカルに実行しているほか、NetBeans6.8も実行しています。phpinfo()の外観から、XDebugはXAMPPに正しくインストールされています。NetBeansでデバッグセッションを開始すると、XDebugに接続してページが開きますが、ブレークポイントで停止しません。

興味がある場合は、これはNetBeansログからの抜粋です。

<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug"      command="step_into" transaction_id="165" status="stopping" reason="ok"></response>
FINE [org.netbeans.modules.php.dbgp.ServerThread]
java.net.SocketTimeoutException: Accept timed out
        at java.net.PlainSocketImpl.socketAccept(Native Method)
        at java.net.PlainSocketImpl.accept(Unknown Source)
        at java.net.ServerSocket.implAccept(Unknown Source)
        at java.net.ServerSocket.accept(Unknown Source)
        at org.netbeans.modules.php.dbgp.ServerThread.run(ServerThread.java:47)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
[catch] at java.lang.Thread.run(Unknown Source)

このタイムアウトは疑わしいように見えますが、それが問題の原因であるかどうかはわかりません。

これは私のphp.ini構成からの抜粋です。

extension=php_xdebug-2.0.5-5.3-vc6.dll
xdebug.extended_info = 1
xdebug.idekey = "netbeans-xdebug"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
xdebug.remote_port = 9000

何か提案はありますか?

4

1 に答える 1

2

私はそれを解決しました。問題は、XDebugを(通常のPHP拡張機能ではなく)Zend Extension Managerを介して有効にする必要があり、XAMPP 1.7.2(私が持っていた)にはZendExtensionManagerがなかったことです。XAMPP 1.7.0にダウングレードしたところ、機能しました。また、Zend Optimizerを無効にして、新しいバージョンのXDebugをダウンロードする必要がありました。これが私の最終的なPHP構成です。

[Zend]
zend_extension_ts = "\xampp\php\zendOptimizer\lib\ZendExtensionManager.dll"
;zend_extension_manager.optimizer_ts = "\xampp\php\zendOptimizer\lib\Optimizer"
;zend_optimizer.enable_loader = 1
;zend_optimizer.optimization_level=15
;zend_optimizer.license_path =
; Local Variables:
; tab-width: 4
; End:

[XDebug]
;; Only Zend OR (!) XDebug
zend_extension_ts="\xampp\php\ext\php_xdebug-2.0.5-5.2.dll"
xdebug.remote_enable=true
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug.profiler_output_dir="\xampp\tmp"
xdebug.idekey = "netbeans-xdebug"
于 2010-02-13T22:16:51.133 に答える