Heute wollte ich nach dieser Dokumentation meine erste Anmerkungsschnittstelle erstellen und habe diesen Compilerfehler erhalten
Invalid type for annotation member": public @interface MyAnnotation { Object myParameter; ^^^^^^ }
Object
Kann offensichtlich nicht als Typ eines Anmerkungselements verwendet werden. Leider konnte ich keine Informationen darüber finden, welche Typen generell verwendet werden können.
Dies habe ich mithilfe von Versuch und Irrtum herausgefunden:
String
→ Gültigint
→ GültigInteger
→ ungültig (überraschend)String[]
→ Gültig (überraschend)Object
→ Ungültig
Vielleicht kann jemand etwas Licht ins Dunkel bringen, welche Typen tatsächlich erlaubt sind und warum.