Refer to the SystemRequirements page for details on supported software platforms.
If using the recommended Oracle JDK, make sure you've installed the Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files (see http://www.oracle.com/technetwork/java/javase/downloads/index.html, towards the bottom). If you don't do this, your deployment will be unable to make use of cryptographic algorithms such as AES with 256-bit keys which may be required for interoperability with some SPs.
If you use Java 8 (which you should), be aware that it relies on a blocking PRNG by default, and the IdP may be observed to start up very slowly if there is insufficient entropy available. There are various workarounds or ways to install better sources of entropy by altering jre/lib/security/java.security or using system properties, but they are platform-specific.