add jdk8 support