--- a/src/hotspot/share/oops/instanceKlass.cpp Mon Jun 25 20:36:06 2018 +0530
+++ b/src/hotspot/share/oops/instanceKlass.cpp Mon Jun 25 11:33:11 2018 -0400
@@ -2850,9 +2850,14 @@
if (cnt >= nof_interfaces) {
ResourceMark rm(THREAD);
stringStream ss;
+ bool same_module = (module() == holder->module());
ss.print("Receiver class %s does not implement "
- "the interface %s defining the method to be called",
- class_loader_and_module_name(), holder->class_loader_and_module_name());
+ "the interface %s defining the method to be called "
+ "(%s%s%s)",
+ external_name(), holder->external_name(),
+ (same_module) ? joint_in_module_of_loader(holder) : class_in_module_of_loader(),
+ (same_module) ? "" : "; ",
+ (same_module) ? "" : holder->class_in_module_of_loader());
THROW_MSG_NULL(vmSymbols::java_lang_IncompatibleClassChangeError(), ss.as_string());
}