我正在尝试在 clojure 中调用一个 java 方法( https://code.google.com/p/metadata-extractor ),该方法需要一个类作为参数。
Java:
metadata.getDirectory(GpsDirectory.class)
我的 Clojure 代码:
(.getDirectory metadata GpsDirectory)
最终出现以下异常:
IllegalArgumentException Don't know how to create ISeq from: com.drew.metadata.exif.GpsDirectory clojure.lang.RT.seqFrom (RT.java:505)
我已经通过命名空间导入了java lib
(ns MyProject.exif
(:import [java.io File BufferedInputStream FileInputStream]
[com.drew.imaging ImageMetadataReader]
[com.drew.metadata.exif GpsDirectory]
[com.drew.metadata Directory]))
有人知道如何在 clojure 中调用这些方法(需要一个类)吗?
最佳答案
尝试:
(.getDirectory metadata (class (GpsDirectory.)))
关于java - 在 clojure 中调用需要类作为参数的 java 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22176139/