Сравнение конфигураций запуска

Как было показано, для хранения данных в конфигурации запуска модули могут применять именованные атрибуты и значения. Поскольку интерпретация атрибутов платформе не известна, предоставляется точка расширения, позволяющая указать средство сравнения для конкретного атрибута. С помощью этого средства проверяется равенство атрибутов с указанным именем. Как правило, для сравнения атрибутов достаточно обычного метода сравнения строк, предоставляемого классом java.lang.Object.equals(Object). Этот способ применяется в случае, если средство сравнения не указано. Однако значения некоторых атрибутов предусматривают дополнительную обработку, например, удаление пробелов из текста перед сравнением.

Средства сравнения предоставляются с помощью точки расширения org.eclipse.debug.core.launchConfigurationComparators.  

Вместе с инструментами Java поставляются средства сравнения конфигурации запуска, предназначенные для сравнения путей к исходному коду и путей к классам.

<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>

Средствами сравнения должен быть реализован интерфейс java.util.Comparator.