TreeKit is a project mainly written in Java, it's free.
TreeKit utils
Repository for utilities to create shapefiles and analysis for the TreeKit database