diff --git a/src/main/org/apache/tools/ant/types/DataType.java b/src/main/org/apache/tools/ant/types/DataType.java index 577e69e31..fda4af62a 100644 --- a/src/main/org/apache/tools/ant/types/DataType.java +++ b/src/main/org/apache/tools/ant/types/DataType.java @@ -241,14 +241,16 @@ public abstract class DataType extends ProjectComponent implements Cloneable { * @since Ant 1.7 */ protected T getCheckedRef(final Class requiredClass, - final String dataTypeName, final Project project) { + final String dataTypeName, final Project project) { if (project == null) { throw new BuildException("No Project specified"); } dieOnCircularReference(project); Object o = ref.getReferencedObject(project); if (!(requiredClass.isAssignableFrom(o.getClass()))) { - log("Class " + o.getClass() + " is not a subclass of " + requiredClass, + log("Class " + displayName(o.getClass()) + + " is not a subclass of " + + displayName(requiredClass), Project.MSG_VERBOSE); String msg = ref.getRefId() + " doesn\'t denote a " + dataTypeName; throw new BuildException(msg); @@ -357,5 +359,9 @@ public abstract class DataType extends ProjectComponent implements Cloneable { dt.setChecked(isChecked()); return dt; } + + private String displayName(Class clazz) { + return clazz.getName() + " (loaded via " + clazz.getClassLoader() +")"; + } }