我正在使用MaleOrang,它是MailChimp的Java包装器,它是比较流行的电子邮件营销网站之一。我将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
。相反,必须为此使用构建和依赖管理工具。
如自述文件所述,可通过MavenCentral访问MaleOrang。
将Maven或Gradle添加到您的项目中,然后在配置文件中添加com.ecwid:maleorang:3.0-0.9.2
作为依赖项。
这样一来,您就可以使用任何Java库,而无需担心其依赖关系(随时间而变化)。