PluginManager
QuarterBukkit | (PluginManager) | MinecartRevolution
This project is took over. Nevertheless you can download the latest source here (until we have a git-repo).
English | German
Basic Description
What is PluginManager? It's a simple plugin for managing your Bukkit-Plugins.
PluginManager features:
- Install plugins from BukkitDev ingame
- Return a list with installed plugins and additional information
- Show detailed infos about plugins
- Load/Unload/Reload plugins
- Search for plugins on BukkitDev
- Check if a new version of a plugin is avaiable
- Update to the latest version of a plugin
For this, the plugin accessing the official BukkitDev-Website (http://dev.bukkit.org), fetching the plugin-pages and scanning them.
For Plugin Developers
PluginManager has already one of the best Url-Genrators (for BukkitDev). But for some plugins, this isn't enough.
You want to make sure that your plugin is supported by PluginManager?
- First, you need your BukkitDev-Url. So go on your BukkitDev-Plugin-Site and click on the tab "Overview" (If you aren't already there).
- Copy the Url of the site (For this plugin, it's http://dev.bukkit.org/server-mods/pluginmanager).
- Insert this key-value-pair (like name: PluginManager) in your plugin.yml: Simply replace <URL> with your BukkitDev-Url, so its looking like this (for this plugin):
dev-url: <URL>
Commands
If the parameter in this list contains "Plugins...", you can write down unlimited plugins and split them with spaces (like "/pm list Essentials WorldEdit"). If your plugin name contains a space, try it with a "-" or nothing (like "/pm list Marriage-Reloaded" or "/pm PermBukkit")!
If the parameter in this list contains "all", you can write "all" or no paramerer for ALL plugins (like "/pm list all" or "/pm list").
The Permission "pluginmanager.*" gives access to use all PluginManager functions (Byte default for OPs).
Command | Description | Permission |
/pm help | Shows a help-page. | pluginmanager.help |
/pm list <Plugins... \ all> | Lists some or all plugins with additional information. | pluginmanager.list |
/pm listfile <Plugins... \ all> | Lists some or all plugins with additional information into a file. | pluginmanager.listfile |
/pm info <Plugins... \ all> | Show detailed info about some or all plugins. | pluginmanager.info |
/pm infofile <Plugins... \ all> | Prints detailed info about some or all plugins into a file. | pluginmanager.infofile |
/pm load <Plugins... \ all> | Loads some or all plugins. | pluginmanager.load |
/pm unload <Plugins... \ all> | Unloads some or all plugins. | pluginmanager.unload |
/pm reload <Plugins... \ all> | Reloads some or all plugins. | pluginmanager.reload |
/pm search <Search-String> | Searches for plugins on BukkitDev. | pluginmanager.search |
/pm checkversion <Plugins... \ all> | Checks some or all plugins for a new version. | pluginmanager.checkversion |
/pm update <Plugins... \ all> | Updates some or all plugins if a new version is avaiable. | pluginmanager.update |
/pm install <Plugins...> | Installs some plugins. | pluginmanager.install |
Config
When you start the plugin the first time, it will automatically creates a config.yml in plugins/PluginManager.
Config (the comments aren't in your config, they're for explaining):
# Should PluginManager prints update and installation infos on the console # and log them? # Useful for controlling the version activity. logVersionInfo: true checkVersions: # Should PluginManager checks all plugin versions when the server starts? # (also on reload) # May requires much RAM. onStart: false # Should PluginManager checks all plugin versions when a permitted player #(pluginmanager.checkversion and pluginmanager.update) joins? # May requires much RAM. onJoin: false update: # Should PluginManager updates all plugins when the server starts? # (also on reload) # May requires much RAM. autoUpdate: false error: # Debug: Should PluginManager print internal and not-so-bad errors on # the console? # Not recommended! printSilenceErrors: false file: # PluginManager prints the plugin-list with "/pm listfile" into this # file. list: plugins.txt # PluginManager prints the plugin-info with "/pm infofile" into this # file. info: plugin-info.txt pluginlist: # Should PluginManager build a plugin-cache on startup? (Recommended for # people who use the search-function) # Will take much time! buildOnStart: true # Until which plugin-page (the pages on http://dev.bukkit.org/server-mods) # should PluginManager fetch plugins? # There are about 300 pages on BukkitDev. pageCount: 100 # Which plugins should PluginManager ignore? (You can also let it empty) # PluginManager will also don't unzip files with one of these names. blacklist: - Plugin1 - Plugin2
It still works on MC 1.12, but a asynchronous task uses a depricated function: getOnlinePlayers.
This gives periodicaly a Java-stackdump:
[12:41:00 WARN]: [PluginManager] Plugin PluginManager v2.7 generated an exception while executing task 2
java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
at com.quartercode.pluginmanager.util.Metrics.postPlugin(Metrics.java:225) ~[?:?]
at com.quartercode.pluginmanager.util.Metrics.access$4(Metrics.java:217) ~[?:?]
at com.quartercode.pluginmanager.util.Metrics$1.run(Metrics.java:156) ~[?:?]
at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot.jar:git-Spigot-99c2a37-f078eed]
at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:52) [spigot.jar:git-Spigot-99c2a37-f078eed]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_131]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_131]
there an alias for /pm?
>pm
[12:42:22 INFO]: ==========[ PluginManager Help ]==========
[12:42:22 INFO]: You can use /pluginmanager, /pm, /plugin, /pmanager, /pluginm!
@Darthmineboy
Actually, my plugin, written from scratch, was created about three months earlier than this one.
please update!
@Darthmineboy
Ha thanks i was looking for this one i downloaded the one on this page i was like what?
I found a similar plugin probably using the same code, or it is a continued project : http://dev.bukkit.org/bukkit-plugins/pm-pluginmanager/
@marcel747800
Oh yeah, I see ;D
This Plugin will be updated in several days! stay tuned.
@QuarterCode
You've got a PM! :)
@QuarterCode
Do you mind releasing the source code of this plugin? As the license is Creative Commons, I thought you release the source code somewhere but I could not find it.
Thank you!
@james137137
Still works ;)
does it work on 1.4 or 1.5
Ok, if someone wants to take over, please contact us via PM. We'll try to respond quickly. If you take over the plugin, you get management rights on this thread, but please add "QuarterCode" and "LoadingByte" as former authors. So: Contact us via BukkitDev-PN if you're interested.
It was a really nice plugin :(
Oh, no :(
Can I try to take over? I am learning java. I know how it all works and I want to learn bukkit api. Thanks.
Still Works On 1.4.6 Guys!
Oh no! If we could just pay someone to update this!
@termin8er678
We had to much problems with version parsing because every plugin author uses an other version format :/