当我在Eclipse PDT中运行PHPUnit测试时,右键单击测试文件夹并选择Run As> PHPUnit Testm
产生此错误:
我导航到Eclipse日志文件并找到以下文本:
eclipse.buildId = 4.8.0.I20180611-0500
java.version = 10.0.2 java.vendor = Oracle公司BootLoader
常量:OS = win32,ARCH = x86_64,WS = win32,NL = en_US Framework
参数:-product org.eclipse.epp.package.php.product命令行
参数:-os win32 -ws win32 -arch x86_64 -product
org.eclipse.epp.package.php.product
这是日志文件的继续:[已模糊]创建时间:[已模糊]
org.eclipse.core.jobs错误发生内部错误 在:“启动phpunit-tests”期间。
java.util.ConcurrentModificationException在 java.base / java.util.HashMap.computeIfAbsent(未知源) org.eclipse.php.phpunit.ui.launch.PHPUnitLaunchConfigurationDelegate.setEnvironmentVariables(PHPUnitLaunchConfigurationDelegate.java:341) 在 org.eclipse.php.phpunit.ui.launch.PHPUnitLaunchConfigurationDelegate.launch(PHPUnitLaunchConfigurationDelegate.java:110) 在 org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:859) 在 org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:717) 在 org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1039) 在 org.eclipse.debug.internal.ui.DebugUIPlugin $ 8.run(DebugUIPlugin.java:1256) 在org.eclipse.core.internal.jobs.Worker.run(Worker.java:60)
我在互联网上找到的许多信息似乎已经过时了。
以下是有关我的环境的一些信息:
PHP版本:7.2.9
PHPUnit版本:7.3.2
平台:Windows 10 Pro
答案 0 :(得分:0)
对我有用的是将 Java 10 降级为 Java 8 。
答案 1 :(得分:0)
答案 2 :(得分:0)
我在Ubuntu 18.04.2 LTS(在VirtualBox中)使用PHP 7.2时遇到了OpenJDK 11.0.3,Eclipse + PHP 2019-06(4.1.12)相同的问题。
我在同一个父目录中使用项目composer.json所需的phpunit和本地composer.phar。
我不仅必须像Asytaka那样在Run / Debug配置中为port设置Environment变量,而且还必须显式设置工作区中的Composer.phar才能使其正常工作。右键单击另一个测试文件会自动为该文件自动创建一个伪造的(调试)调试/运行配置,因此它还是有点不稳定,所以我只是将配置设置为在测试目录中运行所有测试。 >
可行的步骤:
它仍然不是完美的,但至少现在它正在IDE中运行/调试我的测试。