Hemos visto que un conector puede utilizar determinados valores y atributos para almacenar datos importantes con una configuración de lanzamiento. Debido a que la plataforma no conoce la interpretación de los atributos de un conector, se suministra un punto de extensión que permite proporcionar un comparador para un atributo específico. Este comparador se utiliza para determinar si los atributos del nombre especificado son iguales. En muchos casos, la comparación simple de series suministrada por java.lang.Object.equals(Object) es adecuada para la comparación de atributos. Esta técnica se utilizará si no se ha proporcionado ningún comparador. Sin embargo, algunos valores de atributo pueden requerir un manejo especial como, por ejemplo, la eliminación de valores de espacio en blanco del texto antes de la comparación de igualdad.
Los comparadores se añaden mediante el punto de extensión org.eclipse.debug.core.launchConfigurationComparators.
Las herramientas Java suministran comparadores de configuraciones de lanzamiento para comparar las vías de acceso del fuente y de las clases del programa.
<extension point = "org.eclipse.debug.core.launchConfigurationComparators"> <launchConfigurationComparator id = "org.eclipse.jdt.launching.classpathComparator" class = "org.eclipse.jdt.internal.launching.RuntimeClasspathEntryListComparator" attribute = "org.eclipse.jdt.launching.CLASSPATH"/> <launchConfigurationComparator id = "org.eclipse.jdt.launching.sourcepathComparator" class = "org.eclipse.jdt.internal.launching.RuntimeClasspathEntryListComparator" attribute = "org.eclipse.jdt.launching.SOURCE_PATH"/> </extension>
Los comparadores deben implementar la interfaz java.util.Comparator.