如何在clojure中调用这个java库

时间:2018-02-21 17:09:47

标签: clojure plivo

我试图将这个java代码翻译成clojure:

package com.plivo.api.samples.message;

import java.io.IOException;
import java.util.Collections;

import com.plivo.api.Plivo;
import com.plivo.api.exceptions.PlivoRestException;
import com.plivo.api.models.message.Message;
import com.plivo.api.models.message.MessageCreateResponse;

/**
* Example for Message create
*/
class MessageCreate {
    public static void main(String [] args) {
        Plivo.init();
        try {
            MessageCreateResponse response = Message.creator("14153336666", Collections.singletonList("14156667777"), "Test Message")
                .create();

            System.out.println(response);
        } catch (PlivoRestException | IOException e) {
            e.printStackTrace();
        }
    }
}

我甚至不关心错误检查,我无法弄清楚如何让我的代码运行此行:

Message.creator("14153336666", Collections.singletonList("14156667777"), "Test Message")
                    .create();

我已将正确的依赖项导入到我的project.clj中,我只是不知道以创建者被识别的方式执行java互操作。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

您应该发布您编写的任何Clojure代码以尝试解决问题,但调用约定可能是这样的:

(let [creator (Message/creator "14153336666"
                               (Collections/singletonList "14156667777")
                               "Test Message")]
  (.create creator))