Alternative to Files.probeContentType?
Take a look at the Apache Tika. It can easily determine a mime type:
Tika tika = new Tika();
File file = ...
String mimeType = tika.detect(file);
Here's a minimal required maven dependency:
<dependency>
<groupId>org.apache.tika</groupId>
<artifactId>tika-core</artifactId>
<version>1.12</version>
</dependency>
This answer suggests using:
InputStream is = new BufferedInputStream(new FileInputStream(file));
mimeType = URLConnection.guessContentTypeFromStream(is);
//...close stream