add java 8 support