Gegeben ein IFolder-Instance fd (fd kann oder darf nicht existieren), wie erhält man den Namen des Java-Pakets, wenn fd ein Java-Paket darstellt? Derzeit ich auf diese Weise codiertEclipse JDT: Wie bekomme ich den Java-Paketnamen eines nicht existierenden IFolder
IJavaProject jp = JavaCore.create(fd.getProject());
IPackageFragment pf = jp.findPackageFragment(f.getFullPath());
String pname = pf.getElementName();
Der Code ist fehlgeschlagen, wenn fd nicht vorhanden ist (zum Beispiel war es nur gelöscht und die Löschung wurde in IResourceDelta eines IResourceChangeListener gefangen), als IJavaProject # findPackageFragment (IPath) gibt null für nicht vorhandener Artikel Wie erhält man den Paketnamen für einen nicht vorhandenen IFolder? Danke
Vielleicht denke ich rückwärts, oder vielleicht bist du, aber wenn es noch nicht existiert, würde sein Name nicht sein, was auch immer du an seinen übergeordneten IFolder-Paketnamen angehängt haben wolltest? – nitind
Der fehlgeschlagene Fall ist fd wurde gerade gelöscht. Es wurde über IResourceDelta in einem ResourceChangeListener zugegriffen. Im Moment wurde Project gerade aktualisiert und fd existierte nicht. Aber ich muss immer noch seinen Paketnamen bekommen. Irgendein Vorschlag? Danke – CMZS