Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Clojure中调用getCodeBase时遇到问题_Clojure_Audio_Java Interop - Fatal编程技术网

在Clojure中调用getCodeBase时遇到问题

在Clojure中调用getCodeBase时遇到问题,clojure,audio,java-interop,Clojure,Audio,Java Interop,我正在尝试编写一个函数来播放一次声音文件,使用我找到的一些资源。代码如下: (defn play [file] (let [songp (URL. (.getCodeBase) file) song (.newAudioClip songp)] (. song play))) 我遗漏了什么吗?。getCodeBase是一个实例方法调用,因此需要一个接收者(在Java中位于点之前)。如果Java代码只是getCodeBase(),那么有两种可能:要么它实际上意味着this.ge

我正在尝试编写一个函数来播放一次声音文件,使用我找到的一些资源。代码如下:

(defn play [file] (let [songp (URL. (.getCodeBase) file) song (.newAudioClip songp)] (. song play)))
我遗漏了什么吗?

。getCodeBase
是一个实例方法调用,因此需要一个接收者(在Java中位于点之前)。如果Java代码只是
getCodeBase()
,那么有两种可能:要么它实际上意味着
this.getCodeBase()
,在这种情况下,您应该找出该方法中的
this
,并将其指定为第一个参数:

(.getCodeBase obj)
或者,它可以是该类(或其基类之一)的静态方法,在这种情况下,您应该使用静态方法调用表达式:

(ClassName/getCodeBase)

发布您试图翻译的Java代码,并提供足够的上下文,可能有助于更详细地回答这个问题。

.getCodeBase
是一个实例方法调用,因此需要一个接收者(在Java中位于点之前的内容)。如果Java代码只是
getCodeBase()
,那么有两种可能:要么它实际上意味着
this.getCodeBase()
,在这种情况下,您应该找出该方法中的
this
,并将其指定为第一个参数:

(.getCodeBase obj)
或者,它可以是该类(或其基类之一)的静态方法,在这种情况下,您应该使用静态方法调用表达式:

(ClassName/getCodeBase)
在充分的上下文中发布您正试图翻译的Java代码,可能有助于更详细地回答这个问题