Как решить, какой плагин добавить к зависимостям
Мне нужно было знать, какую зависимость добавить (в Eclipse Plug-in), а также как ее добавить. Ошибки, которые я получил в коде Java:
The type org.eclipse.jface.text.source.Annotation cannot be resolved. It is indirectly referenced from required .class files
в выражении java 'package' и:
The hierarchy of the type JavaDecodePlugin is inconsistent
Чтобы найти, какой плагин предоставляет класс Annotation, я искал каталог 'plugins' того места, где код Eclipse был установлен на моем компьютере (windows) (\ app \ androidDev \ eclipse), чтобы найти ссылку на этот класс:
C:\app\androidDev\eclipse\plugins>grep -r org.eclipse.jface.text.source.Annotation *
Binary file org.eclipse.jface.text_3.8.2.v20121126-164145.jar matches
Binary file org.eclipse.text_3.5.200.v20120523-1310.jar matches
на него ссылались в двух плагинах / банках. Я искал банки для желаемого класса. Первый плагин / банка не содержал его, второй сделал.
C:\app\androidDev\eclipse\plugins>jar -tf org.eclipse.jface.text_3.8.2.v20121126-164145.jar |grep Annotations
org/eclipse/jface/text/link/LinkedPositionAnnotations.class
org/eclipse/jface/text/source/projection/ProjectionSupport$ProjectionAnnotationsPainter.class
C:\app\androidDev\eclipse\plugins>jar -tf org.eclipse.text_3.5.200.v20120523-1310.jar |grep Annotations
org/eclipse/jface/text/source/Annotation.class
org/eclipse/jface/text/source/AnnotationMap.class
org/eclipse/jface/text/source/AnnotationModel$1.class
org/eclipse/jface/text/source/AnnotationModel$2.class
org/eclipse/jface/text/source/AnnotationModel$AnnotationsInterator.class
org/eclipse/jface/text/source/AnnotationModel$InternalModelListener.class
org/eclipse/jface/text/source/AnnotationModel$MetaIterator.class
org/eclipse/jface/text/source/AnnotationModel$RegionIterator.class
org/eclipse/jface/text/source/AnnotationModel.class
org/eclipse/jface/text/source/AnnotationModelEvent.class
Так что я знал, какой плагин мне нужен сейчас. Как показывает Зависимости плагина (как в ответе выше), вам нужно перейти в «Package Explorer», развернуть «META-INF», открыть «MANIFEST.MF», открыть вкладку «Dependencies» и нажать нажмите кнопку «Добавить» в разделе «Необходимые подключаемые модули», введите часть имени подключаемого модуля в текстовую область «Выбор подключаемого модуля», дайте ему найти полное имя подключаемого модуля (возможно, выберите нужный подключаемый модуль). ) и нажмите Ok.
(Этот ответ несколько документирует процесс, поэтому, если мне придется сделать это снова после того, как я забуду, что я сделал, я и вы, будете знать)