Pre-requisites
Java 7 | Fedora 4 is built and tested using Java 7, and uses some Java 7+ features |
Maven 3 | The Fedora 4 build uses Maven. |
Git | The Fedora repositories are on Github |
Source Control
Fedora users git, hosted on GitHub, for version control. You can find the main repository at http://github.com/futures.
Setting up your IDE
Eclipse Setup
- m2e Connector
- EGit or JGit plugin
- Sonar plugin - config tbd.
- Set your Eclipse preferences, see fcrepo4/etc/eclipse-prefs/README.md
Style Guide
There is a style guide, which should prevent some extravagant commits full of formatting changes.
Build - Maven
Committing Code
Use
mvn verify
to run tests,mvn install
to build and install in local Maven repository (where it can be found by other local projects).- When adding new classes, they should probably not go in the kernel. Look for a submodule or separate project that's appropriate for the functionality you're adding. Ask if it's not clear where something should go.
- fcrepo-http-api (https://github.com/futures/fcrepo4/tree/master/fcrepo-http-api) is a good example to follow when setting up new modules (though new modules should be in a separate repo, not in fcrepo4).
- fcrepo-kitchen-sink is a project that pulls everything into a single build for demo purposes.
- New modules added to fcrepo-kitchen-sink need to be added to jenkins (who can do this? anything else?)