On Thu, 8 Dec 2022 22:40:57 GMT, Chris Plummer <cjplum...@openjdk.org> wrote:
> 3 things to cleanup in this area: > > (1) The JDWP agent uses `JNI GetEnv(JVMTI_VERSION_1)` to get a JVMTI > environment. If `GetEnv` fails the JDWP agent prints this: > > `ERROR: JDWP unable to access JVMTI Version 1 (0x30010000), is your J2SE a > 1.5 or newer version? JNIEnv's GetEnv() returned -3` > > The text "is your J2SE a 1.5 or newer version?" dates from JDK 5 when JVMTI > was introduced and doesn't make sense now. > > (2) `JVMTI_VERSION_1` suggests that the JDWP agent is looking for a JVMTI v1 > environment when it really wants the latest. `GetEnv` should request > `JVMTI_VERSION` so that it always requests the current version. > > (3) There is some outdated compatibility checking between runtime and compile > time versions of JVMTI that date back to the 1.0, 1.1, and 1.2 era, and are > no longer needed. src/jdk.jdwp.agent/share/native/libjdwp/debugInit.c line 180: > 178: */ > 179: int i; > 180: for (i = 0; i < nof_compatible_versions; ++i) { nof_compatible_versions and compatible_versions_list variables are not used now and can be deleted ------------- PR: https://git.openjdk.org/jdk/pull/11602