Hi all, beginner here,
I'm trying to write a Minecraft plugin in Clojure, and use AOT so that the
Minecraft server can load it right up. I've got this much going, and all as
well. The server expect some of my functions in a class that I'm extending
to use an appropriate annotation on the function.
How do I add these annotations? I've Googled around and see that it looks
like support for this was added back in 2010, so I'm sure it's possible.
Maybe I've seen the solution but didn't realize that it was a solution.
Clojure still looks pretty alien to me, so crazy things like this are rough
to search for and realize when the answer is in front of me.
For example, the Java document for the Minecraft server says that my
function should conform to the following definition:
```
@EventHandlerpublic void onPlayerLogin(PlayerLoginEvent event) {
// Your code here...}
```
I've got the following Clojure code that the server will actually load and it
will call the `onEnable` and `onDisable` function here, but the one that
requires the annotation does not get called.
```
(ns com.github.ryancole.bukkit.hello-world
(:import [org.bukkit Bukkit])
(:gen-class :extends org.bukkit.plugin.java.JavaPlugin
:name com.github.ryancole.bukkit.hello-world.Hello
:prefix hello-))
(defn hello-onEnable [this]
(.info (.getLogger this) "hello world has been enabled"))
(defn hello-onDisable [this]
(.info (.getLogger this) "hello world has been disabled"))
(defn hello-onPlayerLogin [this evnt]
(.info (.getLogger this) "player logged in"))
```
Any ideas?
--
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en