如何在 Java 项目中使用 Kotlin 编写的 MailChimp 包装器

How to use Kotlin-written MailChimp wrapper in Java Project

我正在使用 MaleOrang, a java wrapper for MailChimp,这是比较流行的电子邮件营销网站之一。我将 MaleOrang jar 文件添加到我的项目的类路径中,并使用以下示例连接到 MailChimp 并向我的帐户添加订阅者:

public void RunMailChimp() throws Exception {
        MailchimpClient client = new MailchimpClient(apiKey);
        try {
            EditMemberMethod.CreateOrUpdate method = new EditMemberMethod.CreateOrUpdate(listId, Email);
            method.status = "subscribed";
            method.merge_fields = new MailchimpObject();
            method.merge_fields.mapping.put("FNAME", firstName);
            method.merge_fields.mapping.put("LNAME", lastName);

            MemberInfo member = client.execute(method);
            System.err.println("The user has been successfully subscribed: " + member);
        } finally {
            client.close();
        }
    }

虽然弹出了以下错误。 MaleOrang 背后的人说他的包装器是用 Kotlin 语言编写的,我没有这方面的经验,但我假设这个错误与此有关。谁能深入了解这是如何工作的?

Exception in thread "JavaFX Application Thread" java.lang.NoClassDefFoundError: kotlin/jvm/internal/Intrinsics
    at com.ecwid.maleorang.MailchimpClient.<init>(MailchimpClient.kt)
    ...

我认为你完全理解错了。

java 库不应作为 .jar 下载。相反,必须为此使用构建和依赖管理工具。

正如 README 中提到的,MaleOrang 可以访问 MavenCentral

将 Maven 或 Gradle 添加到您的项目中,然后在配置文件中添加 com.ecwid:maleorang:3.0-0.9.2 作为依赖项。

这样您就可以轻松使用任何 Java 库,而不必担心它的依赖性(可能会随着时间而改变)。