support more java versions