一口吃掉幻
Bukkit.getServer().getClass()在运行后返回的其实是一个CraftServer对象,但是并不知道这些属性的作用...bukkit文档中也没有找到,想问问各位大神,该去哪里找(为了给插件加一个reload指令)。通过反射得到了它的结构:
public final class CraftServer
{       private final String serverName;
        private final String serverVersion;
        private final String bukkitVersion;
        private final Logger logger;
        private final ServicesManager servicesManager;
        private final CraftScheduler scheduler;
        private final CraftCommandMap commandMap;
        private final SimpleHelpMap helpMap;
        private final StandardMessenger messenger;
        private final SimplePluginManager pluginManager;
        protected final DedicatedServer console;
        protected final DedicatedPlayerList playerList;
        private final Map worlds;
        private YamlConfiguration configuration;
        private YamlConfiguration commandsConfiguration;
        private final Yaml yaml;
        private final Map offlinePlayers;
        private final EntityMetadataStore entityMetadata;
        private final PlayerMetadataStore playerMetadata;
        private final WorldMetadataStore worldMetadata;
        private int monsterSpawn;
        private int animalSpawn;
        private int waterAnimalSpawn;
        private int waterAmbientSpawn;
        private int ambientSpawn;
        private File container;
        private WarningState warningState;
        public String minimumAPI;
        public CraftScoreboardManager scoreboardManager;
        public boolean playerCommandState;
        private boolean printSaveWarning;
        private CraftIconCache icon;
        private boolean overrideAllCommandBlockCommands;
        public boolean ignoreVanillaPermissions;
        private final List playerView;
        public int reloadCount;
        public static Exception excessiveVelEx;
        private final Spigot spigot;
        private MobGoals mobGoals;
}


饿魔w
啊?我也是刚学写插件,我觉得用这个就可以
reloadConfig();
你在 IDEA 上一补全 reload 就出来 reloadConfig() 了
我记得我看的教程里有一个文档,里面都是中文,你可以看看:https://bukkit.windit.net/javadoc/

结冰的离季
哪里需要反射,人家开源的 点击跳转

一口吃掉幻
饿魔w 发表于 2021-7-23 16:39
啊?我也是刚学写插件,我觉得用这个就可以
reloadConfig();
你在 IDEA 上一补全 reload 就出来 reloadConf ...

这个只能重置config配置,我想把整个插件卸载掉,这样可以直接更新插件版本

一口吃掉幻
结冰的离季 发表于 2021-7-23 19:19
哪里需要反射,人家开源的 点击跳转

thanks,我在paprer开发文档没找到,原来在spigot里

蕾米洛伊
一口吃掉幻 发表于 2021-7-23 22:39
这个只能重置config配置,我想把整个插件卸载掉,这样可以直接更新插件版本
...

你可以把自己卸载掉啊, 但是不可能自我再加载吧... scheduler 也会在插件卸载后全部被 cancel 掉的。
卸载插件的方法:getServer().getPluginManager().disablePlugin(Plugin plugin),加载同理,是 enablePlugin()

qwders
一口吃掉幻 发表于 2021-7-23 22:45
thanks,我在paprer开发文档没找到,原来在spigot里

额加油兄弟这无敌的好吧是

第一页 上一页 下一页 最后一页