当我开始调试时,该过程保持在57%,并说“等待XDebug会话”。
这是StackOverFlow上的duplicate post,但我尝试了所有答案,没有任何效果。
两天之前工作正常。我不知道出了什么问题。
答案 0 :(得分:6)
现在使用Eclipse在Firefox中启动xdebug会话,突然间,2013年4月23日它不会使用Firefox启动xdebug。它给了我57%的启动和挂起问题。
很高兴在IE / Chrome / Safari / Opera中启动xdebug会话,但不是Firefox。
这次我改变的唯一一件事就是我将我的java运行时从以前的版本升级到1.7.0_21(不记得哪个,但我确实跳了多个版本所以它可能是1.7.0_19)
我查看了项目日志文件,检查项目工作区文件夹中是否有一个名为.metadata的子文件夹,其中应该有一个.log文件,每个项目都有一个这样的文件,所以请确保你正在查看正确的文件之一。
这就是我的想法:
!会话2013-04-23 11:06:21.238 ----------------------------------------------- eclipse.buildId = M20130204-1200 java.version = 1.7.0_21 java.vendor = Oracle Corporation BootLoader常量:OS = win32, ARCH = x86,WS = win32,NL = en_GB命令行参数:-os win32 -ws win32 -arch x86
!ENTRY org.eclipse.ui.browser 4 0 2013-04-23 11:07:32.584!MESSAGE 启动C:\ Program Files \ Mozilla Firefox \ firefox.exe失败。 !STACK 0 java.io.IOException:无法运行程序“C:\ Program”: CreateProcess error = 2,系统找不到指定的文件 java.lang.ProcessBuilder.start(未知来源)at java.lang.Runtime.exec(未知来源)at java.lang.Runtime.exec(未知来源)at java.lang.Runtime.exec(未知来源)at org.eclipse.ui.internal.browser.browsers.MozillaBrowser $ BrowserThread.openBrowser(MozillaBrowser.java:94) 在 org.eclipse.ui.internal.browser.browsers.MozillaBrowser $ BrowserThread.run(MozillaBrowser.java:165) 引起:java.io.IOException:CreateProcess error = 2,系统 找不到java.lang.ProcessImpl.create(Native。)中指定的文件 方法)在java.lang.ProcessImpl。(未知来源)at java.lang.ProcessImpl.start(未知来源)... 6更多
因为我看到了这一行 java.io.IOException:无法运行程序“C:\ Program”:CreateProcess error = 2,
这让我觉得由于某种原因,java无法再处理带有空格的文件夹名称(非常奇怪),所以我更改了eclipse首选项并使用了8.3命名对象C:\ PROGRA~1 \ MOZILL~1 \ firefox.exe
现在再次启动xdebug会话!!
这很奇怪,因为它似乎没有问题
C:\Program Files\Opera\opera.exe OR
C:\Program Files\Safari\Safari.exe OR
C:\Program Files\Internet Explorer\iexplore.exe
所以我能想到的是它不喜欢2个带有空格的文件夹名称,因为它不会从C:\ Program Files \ Mozilla Firefox \ firefox.exe启动firefox 我假设它从名为address的类似文件夹启动IE,因为它是此系统上的默认浏览器。
无论如何,我的解决方案是改变日食偏好 - >一般 - >网络浏览器 - >火狐 使用8.3 DOS目录命名对流。
希望这有帮助
答案 1 :(得分:1)
riggsfolly的分析和解决方案都是正确的,但由于某种原因,我的eclipse不允许我使用DOS 8.3命名约定。作为遇到同一问题的人的替代方案,您可以尝试以下方法:
答案 2 :(得分:1)
我用以找出Mozilla Firefox的8.3兼容Windows路径的最简单方法如下。
C:\>dir .* /x
Volume in drive C has no label.
Volume Serial Number is XXXX-XXXX
Directory of C:\
File Not Found
C:\>dir *.* /x
Volume in drive C has no label.
Volume Serial Number is XXXX-XXXX
Directory of C:\
07/14/2009 08:50 AM <DIR> PerfLogs
04/01/2013 07:32 PM <DIR> PROGRA~1 Program Files
05/14/2013 01:50 PM <DIR> PROGRA~2 Program Files (x86)
01/17/2013 01:43 PM <DIR> Users
05/12/2013 05:46 AM <DIR> Windows
C:\>cd PROGRA~2
C:\PROGRA~2>dir *.* /x
Volume in drive C has no label.
Volume Serial Number is XXXX-XXXX
Directory of C:\PROGRA~2
05/14/2013 01:50 PM <DIR> .
05/14/2013 01:50 PM <DIR> ..
05/14/2013 01:50 PM <DIR> COMMON~1 Common Files
03/05/2013 10:50 AM <DIR> Google
07/14/2009 11:07 AM <DIR> INTERN~1 Internet Explorer
04/19/2013 06:03 PM <DIR> Java
04/14/2013 10:16 PM <DIR> MOZILL~1 Mozilla Firefox
04/15/2013 10:57 AM <DIR> MOZILL~2 Mozilla Maintenance Service
C:\PROGRA~2>cd MOZILL~1
C:\PROGRA~2\MOZILL~1>
答案 3 :(得分:1)
我遇到了类似的问题。我的保持在 72%。我通过设置解决了我的问题
xdebug.mode = 调试
在 php.ini 文件中。 我重新启动了 apache 服务器,现在它工作正常了。
答案 4 :(得分:0)
除了RiggsFolly的救生解决方案之外,以下内容可能对任何人都有用。
问题1:32位和64位Windows 7上的不同路径
在32位Windows 7上,路径是: C:\ PROGRA〜1 \ MOZILL〜1 \ firefox.exe
在64位Windows 7上,路径为: C:\ PROGRA〜2 \ MOZILL〜1 \ firefox.exe
(请注意PROGRA~背后的不同数字,正如我在Abu Sithik的帖子中所说的那样)
问题2:在何处设置路径?
您应该进行设置(正如RiggsFolly已经正确说过的那样): 窗口&gt;偏好&gt;一般&gt; Web浏览器&gt; Firefox&gt;编辑
在Run&gt;中和 NOT (我直观地说)调试配置&gt; Web浏览器&gt; Firefox - 内部服务器。 至少,据我尝试过(但我是一个相对的Eclipse新手),似乎这个设置不会影响Eclipse / xdebug / java用于在xdebug会话中启动浏览器的路径。
我希望这可以帮助任何人防止浪费时间,因为我在运行resp的计算机之间切换时徒劳无功。 32位和64位Windows,并且必须更改firefox可执行文件的路径,直到某一刻好运,我得到了正确的方法,如上所示......
答案 5 :(得分:0)
我遇到了同样的问题,但是当我直接选择de'默认系统Web浏览器而不是Firefox时,突然出现了问题。我的默认Web浏览器是Firefox,现在它启动了。
我希望这会有所帮助。