Sponge API Dependencies - How Will They Be Handled?

Yes, I know the API is still in pieces and not officially supported. My question is in regards to when it is officially ready.

With Bukkit, libraries like SnakeYaml were simply shipped inside of the API; the result being that they could be used seamlessly in plugins, with only the Bukkit API as a build path reference or Maven dependency.

Right now, I just grabbed Guava and threw it in my build path, and all is good. However I am curious if I will have to keep using Guava as an external library, or if the Sponge API will eventually ship with it, or have some sort of hands off functionality like Maven.

Which brings me to Gradle. How exactly would I work Gradle into Eclipse? Is there an Eclipse plugin like there is for Maven, for Gradle? All I’ve seen is people effectively saying “Eclipse Maven and XML are inferior and should be destroyed use IntelliJ and Gradle or you are a scrub lord of programming” (might be exaggerating a bit but that’s kinda how it comes across to me). I would prefer to keep using Eclipse if possible.

I never heard or seen anyone who seriously argued that IntelliJ and Grade should destroy Eclipse and XML (what has one to do with the other anyway?). And even if somebody actually thinks so you are better of avoiding them because they did not understand what they where taking about. Eclipse, IntelliJ, Maven and Gradle are all tools that have specific advantages and disadvantages compared to each other, and determining what tool is best for a task depends from a lot of things including your personal experience. That said, there is of course a Gradle integration for eclipse. See here, first point.

For the dependencies, I am not aware of any official announcement expect that Forge’s libraries will available at runtime, see here.

1 Like

Thank you. Destroyed wasn’t a term used by them, but that’s the sort of aura I got from reading the conversation. I thought it was… Interesting, yeah I’ll say that.

Funnily enough, as I was reading your post I was thinking “IntelliJ does maven and gradle really well natively” until I got to

so you may be on to something there about us IntelliJ users :wink:

1 Like

I don’t have anything against IntelliJ or its users, whatever flavor works for you is what works for you. Its when people say “no your IDE is garbage use this instead” that I start to get a little annoyed.

We kinda hit on that in another thread, and @simon816 linked us to their library list in their Github, if that’s any use to you at all. I’m assuming that list implies that the libraries listed will be accessible from Sponge dependency, although I could be mistaken.

I’m also using Eclipse with Gradle Integration. Just ask me if you need help :wink:

I think I need help… I tried to install the integration and Eclipse is saying it can’t reach it… Can’t tell if this is something on the marketplace’s end, or if its not supported for my version of Eclipse or what.

For my own Eclipse installation, instead of installing from the marketplace because I believe something there is broken, go to Help > Install New Software… Then hit add and use this link,

http://dist.springsource.com/release/TOOLS/update/e4.4/

Then find the Eclipse Integration for Gradle, and install like normal. Then you can create and convert projects the same way as is possible with Maven.

1 Like

Aewsomesauce, will try tonight when I have time.

1 Like

Worked pretty well, though converting to Gradle made some things get a little wacky at first. And since my project was previously Maven, now m2e, and Gradle, are handling it so that’s a thing too.

1 Like