微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

项目未从导入的 Maven 库中获取依赖项

如何解决项目未从导入的 Maven 库中获取依赖项

正如标题所说,我构建了一个示例应用程序,其中包含自定义 Maven 库的依赖项,并且在切换调用库的相关位置函数的位置权限开关时出现此错误

2021-01-21 19:00:19.053 20440-20440/com.livnao.androidsdk.sample E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.livnao.androidsdk.sample,PID: 20440
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/location/LocationRequest;
    at com.livnao.androidsdk.LivNaoSDK.checkDeviceLocationSettings(LivNaoSDK.kt:452)
    at com.livnao.androidsdk.LivNaoSDK.startLocationUpdates(LivNaoSDK.kt:427)
    at com.livnao.androidsdk.LivNaoSDK.enableLocationTracking(LivNaoSDK.kt:411)
    at com.livnao.androidsdk.sample.MainActivity.locationEnableCode(MainActivity.kt:123)
    at com.livnao.androidsdk.sample.MainActivity.access$locationEnableCode(MainActivity.kt:17)
    at com.livnao.androidsdk.sample.MainActivity$initPermissionElements$1.onCheckedChanged(MainActivity.kt:41)
    at android.widget.CompoundButton.setChecked(CompoundButton.java:182)
    at androidx.appcompat.widget.SwitchCompat.setChecked(SwitchCompat.java:1071)
    at androidx.appcompat.widget.SwitchCompat.toggle(SwitchCompat.java:1066)
    at android.widget.CompoundButton.performClick(CompoundButton.java:141)
    at android.view.View.performClickInternal(View.java:7318)
    at android.view.View.access$3200(View.java:846)
    at android.view.View$PerformClick.run(View.java:27800)
    at android.os.Handler.handleCallback(Handler.java:873)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7050)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:965)
 Caused by: java.lang.classNotFoundException: Didn't find class "com.google.android.gms.location.LocationRequest" on path: DexPathList[[zip file "/data/app/com.livnao.androidsdk.sample-4VCsjkqLXREsbJ7FauDQrA==/base.apk"],nativeLibraryDirectories=[/data/app/com.livnao.androidsdk.sample-4VCsjkqLXREsbJ7FauDQrA==/lib/arm64,/system/lib64,/system/vendor/lib64]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
    at java.lang.classLoader.loadClass(ClassLoader.java:379)
    at java.lang.classLoader.loadClass(ClassLoader.java:312)
    at com.livnao.androidsdk.LivNaoSDK.checkDeviceLocationSettings(LivNaoSDK.kt:452) 
    at com.livnao.androidsdk.LivNaoSDK.startLocationUpdates(LivNaoSDK.kt:427) 
    at com.livnao.androidsdk.LivNaoSDK.enableLocationTracking(LivNaoSDK.kt:411) 
    at com.livnao.androidsdk.sample.MainActivity.locationEnableCode(MainActivity.kt:123) 
    at com.livnao.androidsdk.sample.MainActivity.access$locationEnableCode(MainActivity.kt:17) 
    at com.livnao.androidsdk.sample.MainActivity$initPermissionElements$1.onCheckedChanged(MainActivity.kt:41) 
    at android.widget.CompoundButton.setChecked(CompoundButton.java:182) 
    at androidx.appcompat.widget.SwitchCompat.setChecked(SwitchCompat.java:1071) 
    at androidx.appcompat.widget.SwitchCompat.toggle(SwitchCompat.java:1066) 
    at android.widget.CompoundButton.performClick(CompoundButton.java:141) 
    at android.view.View.performClickInternal(View.java:7318) 
    at android.view.View.access$3200(View.java:846) 
    at android.view.View$PerformClick.run(View.java:27800) 
    at android.os.Handler.handleCallback(Handler.java:873) 
    at android.os.Handler.dispatchMessage(Handler.java:99) 
    at android.os.Looper.loop(Looper.java:214) 
    at android.app.ActivityThread.main(ActivityThread.java:7050) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:965) 

任何人都知道为什么 android studio 不导入位置依赖项或其类文件

库中与位置相关的依赖和proguard文件部分如下所示:

api 'com.google.android.gms:play-services-auth:19.0.0'
api 'com.google.android.gms:play-services-location:17.1.0'


-keep class com.google.android.gms.location.** { *; }
-dontwarn com.google.android.gms.location.**

如果我将库项目作为项目中的模块导入,它工作得很好。但在发布到 Maven 存储库并作为示例项目中的依赖项添加时不起作用,

请帮忙,非常感谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。