some mini tools use java language