If you need to copy a binary file from a running JAR (or WAR), don't call slurp
as it will try and decode the file. Instead, extract similarily to:
(with-open [in (io/input-stream (io/resource "file.dat"))] ;; resources/file.dat
(io/copy in (io/file "/path/to/extract/file.dat"))))