Android上的Spring OAuth2异常(在路径上找不到类“javax.xml.transform.stax.StAXSource”:DexPathList)
上下观古今,起伏千万途。这篇文章主要讲述Android上的Spring OAuth2异常:在路径上找不到类“javax.xml.transform.stax.StAXSource”:DexPathList相关的知识,希望能为你提供帮助。
我尝试使用spring的OAuth2依赖项为服务器创建一个android客户端。问题是当我调用这个构造函数时:
OAuth2RestTemplate oAuthRestTemplate = new Auth2RestTemplate(resourceDetails);
我得到这个例外:
Didn't find class "javax.xml.transform.stax.StAXSource" on path: DexPathList
【Android上的Spring OAuth2异常(在路径上找不到类“javax.xml.transform.stax.StAXSource”:DexPathList)】我使用的是使用gradle的Android Studio,我包含OAuth2依赖项,如下所示:
dependencies {
implementation 'org.springframework.security.oauth:spring-security-oauth2:2.3.0.RC1'
...
}
在similar question中,接受的答案建议包括Spring rest-template依赖(
compile 'org.springframework.android:spring-android-rest-template:1.0.1.RELEASE'
),但是当我这样做时,我得到另一个错误,我也发布了here。我认为不应该包含Spring rest-template依赖项,因为它可能已经被Spring OAuth依赖项导入了。这是真的吗?如果是,我怎么能解决另一个类(
javax.xml.transform.stax.StAXSource
)无法找到的事实呢?我认为无法找到这个类的原因是因为我在android上使用自己的JDK实现,正如this answer所说。如果有人能帮我解决这个问题,那将非常感激。
答案似乎需要其他依赖项(spring-android-rest-template依赖项),我不得不放置它们并且还排除重复的模块。我是这样做的:
compile('org.springframework.android:spring-android-rest-template:2.0.0.M3') {
exclude module: 'spring-android-core'
}compile('org.springframework.security.oauth:spring-security-oauth2:2.3.0.RC1'){
exclude module: 'spring-web'
}
推荐阅读
- 如何在Android中使用Appcelerator Titanium构建Oauth 2.0
- Linkedin signin(无法检索访问令牌:appId或重定向uri与授权代码或授权代码已过期不匹配)
- Flutters资源加载速度比原生Android快
- 如何解决Symfony 4中的KnpPaginator异常(即使应用容器中存在服务”knp_paginator”,也找不到)
- 如何在C#中将Unixtime转换为DateTime类,反之亦然
- 2020年最值得学习的编程语言列表
- 如何磨练/提高你的编码技能()
- 如何解决C#WinForms构建异常(ClickOnce不支持请求执行级别” requireAdministrator”。)
- 关于HTML/CSS模板的7个惊人秘密