findComponentType() logic is wrong. In findComponentType() method, We always get vm.classesByName() retruns empty list list = vm.classesByName(parser.typeName()); We have "parser.typeName()" retruns " double[][]" vm.classesByName("") is expecting the fully qualified name example "java.lang.Double" This always returns empty list, resulting into ClassNotLoadedException as it assumes the Component class has not yet been loaded, hence the test case fails.
There was a suggested fix from Egor Ushakov from JetBrains, I am proposing the same to get this fix. I have verified the patch with required testing it works fine. ------------- Commit messages: - 8221503: vmTestbase/nsk/jdb/eval/eval001/eval001.java fails with: com.sun.jdi.InvalidTypeException: Can't assign double[][][] to double[][][] Changes: https://git.openjdk.java.net/jdk/pull/3658/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3658&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8221503 Stats: 25 lines in 2 files changed: 0 ins; 23 del; 2 mod Patch: https://git.openjdk.java.net/jdk/pull/3658.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3658/head:pull/3658 PR: https://git.openjdk.java.net/jdk/pull/3658