Já vimos como um plug-in pode utilizar atributos e valores denominados para armazenar dados importantes com uma configuração de lançamento. Visto que a interpretação dos atributos de um plug-in não é conhecida pela plataforma, é facultado um ponto de extensão que permite indicar um comparador para um atributo específico. Este comparador é utilizado para determinar se os atributos do nome especificado são ou não iguais. Em muitos casos, a simples comparação de cadeias de caracteres facultada por java.lang.Object.equals(Object) é adequada para comparar atributos. Esta técnica será utilizada se não tiver sido facultado nenhum comparador. Todavia, há valores de atributos que podem implicar tratamento especial como, por exemplo, retirar valores de espaço em branco de texto antes de comparar para fins de igualdade.
Os comparadores constituem contributos através do ponto de extensão org.eclipse.debug.core.launchConfigurationComparators.
As ferramentas Java facultam comparadores de configurações de lançamento para comparar caminhos de origem e caminhos de classes de programas.
<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>
Os comparadores devem implementar a interface java.util.Comparator.