Skip to content

Commit

Permalink
Fixed a few bugs getting sample plugin to load
Browse files Browse the repository at this point in the history
  • Loading branch information
Dinnerbone committed Dec 24, 2010
1 parent 3fdb366 commit b8c8bea
Show file tree
Hide file tree
Showing 6 changed files with 37 additions and 10 deletions.
7 changes: 6 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,9 @@
/nbproject
/build.xml
/manifest.mf
/dist
/dist
/sample/test
/sample/build.xml
/sample/build
/sample/dist
/sample/nbproject
28 changes: 28 additions & 0 deletions sample/src/com/dinnerbone/bukkit/sample/SamplePlugin.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@

package com.dinnerbone.bukkit.sample;

import java.io.File;
import org.bukkit.Server;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.PluginLoader;
import org.bukkit.plugin.java.JavaPlugin;

/**
* Sample plugin for Bukkit
*
* @author Dinnerbone
*/
public class SamplePlugin extends JavaPlugin {
public SamplePlugin(PluginLoader pluginLoader, Server instance, PluginDescriptionFile desc, File plugin, ClassLoader cLoader) {
super(pluginLoader, instance, desc, plugin, cLoader);
System.out.println("Johnny five is alive!");
}

public void onDisable() {
System.out.println("Goodbye world!");
}

public void onEnable() {
System.out.println("Hello world!");
}
}
5 changes: 0 additions & 5 deletions src/org/bukkit/plugin/Plugin.java
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,4 @@ public interface Plugin {
* Called when this plugin is enabled
*/
public void onEnable();

/**
* Called when this plugin is first initialized
*/
public void onInitialize();
}
1 change: 0 additions & 1 deletion src/org/bukkit/plugin/PluginManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,6 @@ public Plugin loadPlugin(File file) throws InvalidPluginException {
if (result != null) {
plugins.add(result);
lookupNames.put(result.getDescription().getName(), result);
result.onInitialize();
}

return result;
Expand Down
2 changes: 1 addition & 1 deletion src/org/bukkit/plugin/java/JavaPlugin.java
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public abstract class JavaPlugin implements Plugin {
* @param plugin File containing this plugin
* @param cLoader ClassLoader which holds this plugin
*/
protected JavaPlugin(PluginLoader pluginLoader, Server instance, PluginDescriptionFile desc, File plugin, ClassLoader cLoader) {
public JavaPlugin(PluginLoader pluginLoader, Server instance, PluginDescriptionFile desc, File plugin, ClassLoader cLoader) {
loader = pluginLoader;
server = instance;
file = plugin;
Expand Down
4 changes: 2 additions & 2 deletions src/org/bukkit/plugin/java/JavaPluginLoader.java
Original file line number Diff line number Diff line change
Expand Up @@ -28,15 +28,15 @@ public JavaPluginLoader(Server instance) {

public Plugin loadPlugin(File file) throws InvalidPluginException {
JavaPlugin result = null;
PluginDescriptionFile description = new PluginDescriptionFile("Sample Plugin", "org.bukkit.plugin.sample.main");
PluginDescriptionFile description = new PluginDescriptionFile("Sample Plugin", "com.dinnerbone.bukkit.sample.SamplePlugin");

if (!file.exists()) {
throw new InvalidPluginException(new FileNotFoundException(String.format("%s does not exist", file.getPath())));
}

try {
ClassLoader loader = URLClassLoader.newInstance(new URL[]{file.toURI().toURL()}, getClass().getClassLoader());
Class<?> jarClass = Class.forName(description.getMain());
Class<?> jarClass = Class.forName(description.getMain(), true, loader);
Class<? extends JavaPlugin> plugin = jarClass.asSubclass(JavaPlugin.class);
Constructor<? extends JavaPlugin> constructor = plugin.getConstructor(PluginLoader.class, Server.class, PluginDescriptionFile.class, File.class, ClassLoader.class);

Expand Down

0 comments on commit b8c8bea

Please sign in to comment.