将Tuya Pulsar SDK Java从IDEA迁移到Android Studio遇报错求助
迁移涂鸦Pulsar Java SDK到Android Studio的依赖问题
我正尝试将Tuya SDK Java从IntelliJ IDEA迁移到Android Studio,过程中遇到了依赖相关的问题:
第一次依赖尝试与运行时错误
在build.gradle中添加以下依赖:
implementation 'org.apache.pulsar:pulsar-client-api:3.0.7'
运行代码时抛出ClassNotFoundException:
java.lang.ClassNotFoundException: org.apache.pulsar.client.impl.PulsarClientImplementationBindingImpl
该错误来自pulsar-client-api的DefaultImplementation.java文件第33行。
第二次依赖尝试与编译错误
将依赖替换为:
implementation 'org.apache.pulsar:pulsar-client:3.0.7'
编译时出现大量重复类错误,部分错误信息如下:
Duplicate class org.apache.pulsar.common.functions.package-info found in modules pulsar-client-3.0.7.jar -> jetified-pulsar-client-3.0.7 (org.apache.pulsar:pulsar-client:3.0.7) and pulsar-client-admin-api-3.0.7.jar -> jetified-pulsar-client-admin-api-3.0.7 (org.apache.pulsar:pulsar-client-admin-api:3.0.7) Duplicate class org.apache.pulsar.common.io.package-info found in modules pulsar-client-3.0.7.jar -> jetified-pulsar-client-3.0.7 (org.apache.pulsar:pulsar-client:3.0.7) and pulsar-client-admin-api-3.0.7.jar -> jetified-pulsar-client-admin-api-3.0.7 (org.apache.pulsar:pulsar-client-admin-api:3.0.7) Duplicate class org.apache.pulsar.common.naming.package-info found in modules pulsar-client-3.0.7.jar -> jetified-pulsar-client-3.0.7 (org.apache.pulsar:pulsar-client:3.0.7) and pulsar-client-admin-api-3.0.7.jar -> jetified-pulsar-client-admin-api-3.0.7 (org.apache.pulsar:pulsar-client-admin-api:3.0.7) Duplicate class org.apache.pulsar.common.policies.data.package-info found in modules pulsar-client-3.0.7.jar -> jetified-pulsar-client-3.0.7 (org.apache.pulsar:pulsar-client:3.0.7) and pulsar-client-admin-api-3.0.7.jar -> jetified-pulsar-client-admin-api-3.0.7 (org.apache.pulsar:pulsar-client-admin-api:3.0.7) Duplicate class org.apache.pulsar.common.policies.impl.package-info found in modules pulsar-client-3.0.7.jar -> jetified-pulsar-client-3.0.7 (org.apache.pulsar:pulsar-client:3.0.7) and pulsar-client-admin-api-3.0.7.jar -> jetified-pulsar-client-admin-api-3.0.7 (org.apache.pulsar:pulsar-client-admin-api:3.0.7) Duplicate class org.apache.pulsar.common.policies.package-info found in modules pulsar-client-3.0.7.jar -> jetified-pulsar-client-3.0.7 (org.apache.pulsar:pulsar-client:3.0.7) and pulsar-client-admin-api-3.0.7.jar -> jetified-pulsar-client-admin-api-3.0.7 (org.apache.pulsar:pulsar-client-admin-api:3.0.7) Duplicate class org.apache.pulsar.common.protocol.schema.package-info found in modules pulsar-client-3.0.7.jar -> jetified-pulsar-client-3.0.7 (org.apache.pulsar:pulsar-client:3.0.7) and pulsar-client-admin-api-3.0.7.jar -> jetified-pulsar-client-admin-api-3.0.7 (org.apache.pulsar:pulsar-client-admin-api:3.0.7) Duplicate class org.apache.pulsar.common.schema.package-info found in modules pulsar-client-3.0.7.jar -> jetified-pulsar-client-3.0.7 (org.apache.pulsar:pulsar-client:3.0.7) and pulsar-client-api-3.0.7.jar -> jetified-pulsar-client-api-3.0.7 (org.apache.pulsar:pulsar-client-api:3.0.7) Duplicate class org.apache.pulsar.common.stats.package-info found in modules pulsar-client-3.0.7.jar -> jetified-pulsar-client-3.0.7 (org.apache.pulsar:pulsar-client:3.0.7) and pulsar-client-admin-api-3.0.7.jar -> jetified-pulsar-client-admin-api-3.0.7 (org.apache.pulsar:pulsar-client-admin-api:3.0.7)
调用SDK的代码示例
MqConsumer mqConsumer = MqConsumer.build().serviceUrl(URL).accessId(ACCESS_ID).accessKey(ACCESS_KEY) .messageListener(message -> { System.out.println("Message"); }); try { mqConsumer.start(); } catch (Exception ex) { throw new RuntimeException(ex); }
我曾在GitHub找到过类似问题,但未找到可行解决方案,希望能得到帮助。
内容的提问来源于stack exchange,提问作者kaldoran
相关产品推荐
相关产品推荐

