2009-06-04 7 views

Antwort

2

Versuchen Sie die Einstellung Bundle-ClassPath in Ihrem Manifest.

Dieser Header teilt OSGi mit, in welchem ​​Paket Sie die Klassen finden. Wenn nicht angegeben, ist der Standardwert ".", was die Wurzel Ihres Bündels bedeutet.

PDE/UI basiert auf dieser Warnung, ob es sich bei Ihrem Bundle um ein Glas handelt oder nicht. Die Entscheidung basiert unter anderem darauf, ob der Bundle-ClassPath "." enthält oder nicht. (In einem Ordner-förmigen Paket würde dies .class-Dateien im Stammordner anstelle eines jars bedeuten).

Zum Beispiel können die Bündel org.eclipse.pde.build Schiffe als Ordner, alle Klassendateien sind in verschachtelten Gläsern, und es hat Bundle-ClassPath: pdebuild.jar

Wenn Sie keine Klassendateien enthalten, und haben Keine verschachtelten Gläser, Sie könnten wahrscheinlich einfach einen beliebigen Ordner in Ihrem Bündel angeben.

+0

Hier sind die Schritte, die ich verwendet habe, um zu tun, was Sie über die Benutzeroberfläche vorgeschlagen: Auf der Registerkarte Erstellen: entfernen Sie die. Bibliothek. Klicken Sie auf Bibliothek hinzufügen ... und geben Sie den Namen einer JAR-Datei ein. Klicken Sie auf Ordner hinzufügen ..., um Ihr src-Verzeichnis hinzuzufügen. Wechseln Sie zur Registerkarte Laufzeit. Klicken Sie im Abschnitt Klassenpfad auf die Schaltfläche Neu ... und geben Sie den Namen der JAR-Datei ein, die Sie gerade erstellt haben. – Jeremy

+0

Setting Bundle-ClassPath: META-INF hat auch daran gearbeitet, die Warnung wegzulassen, ohne etwas zu ändern. – Jeremy