Hey ich habe folgendes:
Die Annotation:
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface RegisterCommand {
public String cmdname();
public String[] aliases();
public String description();
}
Folgenden Klassenkopf:
@RegisterCommand(cmdname="g", aliases={"scoreboardupdate"},description="Update your scoreboard!")public class CommandG extends Command{
...
}
und ich will dann da alle aus dem Package durchgehen die annotated sind:
public void registerCommands() throws InstantiationException, IllegalAccessException, ClassNotFoundException, IOException
{
PluginManager pluginManager = this.getServer().getPluginManager();
for(ClassPath.ClassInfo classInfo: ClassPath.from(this.getClassLoader()).getTopLevelClasses("dc.commands"))
{
if(classInfo.getClass().isAnnotationPresent(RegisterCommand.class))
{//HIER KOMMT ER NICHT HIN IMMER FALSE
RegisterCommand schinken = classInfo.getClass().getAnnotation(RegisterCommand.class);
RuntimeCommands.registerCommand(Data.plugin, schinken.cmdname(), Arrays.asList(schinken.aliases()), null, null, null, null);
}
}
}
Also er kommt nicht weiter bei der "if", jedoch läuft er durch die richtigen Klassen!
Die Annotation:
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface RegisterCommand {
public String cmdname();
public String[] aliases();
public String description();
}
Folgenden Klassenkopf:
@RegisterCommand(cmdname="g", aliases={"scoreboardupdate"},description="Update your scoreboard!")public class CommandG extends Command{
...
}
und ich will dann da alle aus dem Package durchgehen die annotated sind:
public void registerCommands() throws InstantiationException, IllegalAccessException, ClassNotFoundException, IOException
{
PluginManager pluginManager = this.getServer().getPluginManager();
for(ClassPath.ClassInfo classInfo: ClassPath.from(this.getClassLoader()).getTopLevelClasses("dc.commands"))
{
if(classInfo.getClass().isAnnotationPresent(RegisterCommand.class))
{//HIER KOMMT ER NICHT HIN IMMER FALSE
RegisterCommand schinken = classInfo.getClass().getAnnotation(RegisterCommand.class);
RuntimeCommands.registerCommand(Data.plugin, schinken.cmdname(), Arrays.asList(schinken.aliases()), null, null, null, null);
}
}
}
Also er kommt nicht weiter bei der "if", jedoch läuft er durch die richtigen Klassen!