Repository software for Sponge plugins and Forge mods https://ore.spongepowered.org/
Ore is written in Scala using the Play framework.
The following steps will ensure your project is cloned properly.
git clone https://github.com/SpongePowered/Ore.git
cp scripts/pre-commit .git/hooks
After cloning Ore, the first thing you will want to do is create a new PostgreSQL 11 database for the application to use. This is required in order for Ore to run. Learn more about PostgreSQL here.
You will also need to enable a few extensions for Ore. These are:
After setting up a database, create a copy of
configure the application, for the application you want to run. This file is in the
.gitignore so it will not appear in your commits.
Your local copy needs to get updated every time you pull changes, which add a new setting to the config. Currently valid
jobs, and their configuration files can be found in
In a typical development environment, most of the defaults are fine. Here are a few you might want to take a look at though.
Running Ore is relatively simple.
sbt ore/runin the project root to run the web app.
sbt jobs/runin the project root to run the jobs processing.
With IntelliJ Community Edition
ore/runin the Tasks field.
Use sbt shell
ore, but use
OreJobProcessorMainwhen opening up the file.
Note: You might encounter a stack overflow exception when compiling ore. This is not unexpected. Just assign
more stack size to sbt in the way you're starting sbt.
-Xss4m should be enough. If you're using IntelliJ, you can set
this in the VM arguments field. If you're invoking sbt directly, the most common ways to set this is either through
SBT_OPTS environment variable, or with a file named
.jvmopts with each flag on a new line.
Hydra is the world’s only parallel compiler for the Scala language. Its design goal is to take advantage of the many cores available in modern hardware to parallelize compilation of Scala sources. This gives us the possibility to achieve a much faster compile time. Triplequote has kindly provided us with some licenses. If you have a license and want to use Hydra, follow these steps:
Create the file
Put in this content into the newly created file:
credentials += Credentials("Artifactory Realm", "repo.triplequote.com", "<username>", "<password>") resolvers += Resolver.url("Triplequote Plugins Releases", url("https://repo.triplequote.com/artifactory/sbt-plugins-release/"))(Resolver.ivyStylePatterns) addSbtPlugin("com.triplequote" % "sbt-hydra" % "<version>")
<password>placeholders have to be replaced with your credentials.
<version>placeholder has to be replaced with the lastest version of
sbt-hydrawhich can be obtained from the offical changelog.
Open the sbt console and make use of the following command where
<license key> is your personal hydra license key:
hydraActivateLicense <license key>
Go and start compiling!
Further instructions can be found at the official Hydra documentation.