使用Clojure访问Java静态内部类 [英] Access to a Java static inner class with Clojure
本文介绍了使用Clojure访问Java静态内部类的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试访问静态内部类方法,但找不到正确的方法。
I'm trying access to a static inner class method, but I can't find the right way.
我需要在Clojure中编写以下Java代码:
I need to write this java code in Clojure:
SessionProperties sessionProperties = SessionProperties.Builder().mediaMode(MediaMode.ROUTED).build();
我的代码是:
(:import [com.opentok OpenTok MediaMode SessionProperties SessionProperties$Builder]))
(def sessionProperties (.build (.mediaMode SessionProperties$Builder MediaMode/ROUTED))
这是错误:
java.lang.IllegalArgumentException: No matching method found: mediaMode for class java.lang.Class
$ b的mediaMode $ b
我正在使用 opentok Java库,我不明白如何访问mediaMode方法。
I'm using the opentok Java library and I don't understand how to access to mediaMode method.
推荐答案
您的Java代码无法正常运行。要解决此问题,请在 =
和 new
关键字> SessionProperties.Builder()。应该是:
Your Java code does not work. To fix the remedy, add the new
keyword between =
and SessionProperties.Builder()
. It should be:
SessionProperties sessionProperties = new SessionProperties.Builder()
.mediaMode(MediaMode.ROUTED)
.build();
您可以在Clojure中执行以下操作。
You can do this in Clojure as follows.
user> (import '(com.opentok SessionProperties$Builder MediaMode))
com.opentok.MediaMode
user> (def session-properties (.. (SessionProperties$Builder.)
(mediaMode MediaMode/ROUTED)
build))
#'user/session-properties
user> session-properties
#<SessionProperties com.opentok.SessionProperties@54fc58ee>
这篇关于使用Clojure访问Java静态内部类的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文