プラグインが、起動構成で名前付き属性および値を使用して重要なデータを保管する方法については、すでに説明しました。 プラグインの属性の解釈がプラットフォームでは認識されていないため、指定の属性に対して比較機構を提供できる拡張ポイントが準備されています。 この比較機構は、指定された名前の属性が等しいかどうかを判別するために使用されます。 ほとんどの場合、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 が実装されている必要があります。