我正在尝试在插件中使用反射。

但是我不知道如何获得bukkit或v1_8_R1,v1_7_R4等NMS版本。

有什么办法可以得到这种东西吗?或者我需要使用开关使用Bukkit.getVerion()进行检测。 ?

最佳答案

您需要获取任何NMS或CB类的软件包名称。

下面的示例使用普通的bukkit服务器实例plugin.getServer()并获取Craftcraft类,并从包中读取版本。

public static String getVersion(Server server) {
    final String packageName = server.getClass().getPackage().getName();

    return packageName.substring(packageName.lastIndexOf('.') + 1);
}

10-08 07:05