diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/io/file/PathUtil.java b/hutool-core/src/main/java/org/dromara/hutool/core/io/file/PathUtil.java index fa113412f..065ea407c 100644 --- a/hutool-core/src/main/java/org/dromara/hutool/core/io/file/PathUtil.java +++ b/hutool-core/src/main/java/org/dromara/hutool/core/io/file/PathUtil.java @@ -594,8 +594,9 @@ public class PathUtil { public static String getMimeType(final Path file) { try { return Files.probeContentType(file); - } catch (final IOException e) { - throw new IORuntimeException(e); + } catch (final IOException ignore) { + // issue#3179,使用OpenJDK可能抛出NoSuchFileException,此处返回null + return null; } } diff --git a/hutool-core/src/test/java/org/dromara/hutool/core/io/file/PathUtilTest.java b/hutool-core/src/test/java/org/dromara/hutool/core/io/file/PathUtilTest.java index 6aefc7dbc..58ddec385 100644 --- a/hutool-core/src/test/java/org/dromara/hutool/core/io/file/PathUtilTest.java +++ b/hutool-core/src/test/java/org/dromara/hutool/core/io/file/PathUtilTest.java @@ -93,4 +93,10 @@ public class PathUtilTest { public void moveTest2(){ PathUtil.move(Paths.get("D:\\project\\test1.txt"), Paths.get("D:\\project\\test2.txt"), false); } + + @Test + public void issue3179Test() { + final String mimeType = PathUtil.getMimeType(Paths.get("xxxx.jpg")); + Assertions.assertEquals("image/jpeg", mimeType); + } }