The code still contains concepts that were used long before Java 8 in many places. Some of these can or should now be replaced by other constructs.
The tests load many resources from files and operate on file URLs. These are assembled from a base URL and string paths. The Paths API has long provided better alternatives here.