Slick 2D Maven Distribution
The fastest and simplest way to start a new Slick 2D based game.
You don't need to clone this repository to get started. The project archetype as well as the JARs are published in the official Maven repositories, so you can just follow the steps below from scratch. Clone this project only if you want to contribute to Slick2D or to the game archetype.
- Git, Java and Maven working
- Slick 2D depends on
javaws.jarwhich ships with the Oracle JDK (It's not available in the public Maven repositories). The
pom.xmlfile references a local filesystem path to
javaws.jarfor that reason.
- It won't work with OpenJDK for the reason above (Can be solved by providing
javaws.jarseparately). On some Linux distributions you can install Netx and change the system path to point to
netx.jar. For example on Ubuntu the package to install is
icedtea-netx-commonand the jar is in
Create a Slick 2D game
The command below is using
archetypeVersion=1.0.0. Make sure you use the latest available version from Maven central
cd /home/<user>/projects/ -or- cd C:\Users\<user>\Projects\ # You can omit the last 4 parameters for interactive mode mvn archetype:generate -DarchetypeGroupId=org.slick2d -DarchetypeArtifactId=slick2d-basic-game-archetype -DarchetypeVersion=1.0.0 -DgroupId=com.me.game -DartifactId=game -Dversion=0.0.1-SNAPSHOT -Dpackage=com.me.game cd game mvn clean package
You'll end up with a packaged game in
target/game-0.0.1-SNAPSHOT-release.zip. Just unzip and run
game.sh (Linux) or
game.bat (Windows). Alternatively, files are also available unzipped in
Run/Debug from Eclipse
Configuration-free with the awesome Maven Natives plugin ! Just hit the "Run" button !
- You must have the Maven Eclipse integration plugin installed (m2e)
- Import the Maven project
- Right-click on
Game, Debug as, Java application
- This will fail with
mvn packageonce, the native libraries will get copied in
- Edit your debug configuration (menu Run, Debug configurations...), on the "Arguments" tab, "VM Arguments" field, enter
- Click on "Debug" and you're all set !
I believe making Slick 2D available through Maven will make life easier for users:
- Clear versionning scheme
- Very easy quickstart using Maven archetypes (see above)
- Simplified dependency management, especially for the native libraries
- Simplified game packaging
It seems that the upstream Slick2D Mercurial repository is not updated any more, despite numerous bug reports and pull requests. Because of that, I'm now accepting patches that I'll integrate and release through Maven. I guess you could consider this project a fork of the official sources.