异常发生在运行时
java.lang.noclassdeffounderror:reformation2/reformation$builder
尝试执行时:
return new Retrofit.Builder()
.baseUrl(hostUrl)
.build();
服务在Java8中使用pants构建系统。生成文件内容:
java_library(name='service',
sources=rglobs('*.java'),
dependencies=[
...
'services/../src/java/com/../../service:sms-api-lib',
...
]
)
jar_library(name = 'sms-api-lib',
jars=[
jar(org='com.xxxx.xxxx.xxxx', name='sms-api', rev='0.0.6'),
jar(org='com.squareup.retrofit2', name='retrofit', rev='2.3.0'),
jar(org='com.squareup.retrofit2', name='converter-gson', rev='2.9.0'),
jar(org='com.squareup.retrofit2', name='converter-moshi', rev='2.3.0'),
jar(org='com.squareup.moshi', name='moshi-adapters', rev='1.9.2'),
jar(org='com.squareup.retrofit2', name='converter-scalars', rev='2.3.0'),
jar(org='com.squareup.okio', name='okio', rev='2.7.0'),
jar(org='com.squareup.okhttp3', name='okhttp', rev='4.8.1'),
jar(org='org.jetbrains.kotlin', name='kotlin-stdlib', rev='1.3.72'),
],
scope='compile',
)
值得一提的是
jar(org='com.xxxx.xxxx.xxxx', name='sms-api', rev='0.0.6')
支持Java8目标的内部开发(使用Java11)。它具有以下依赖关系:
com.google.guava:guava:29.0-jre
com.squareup.moshi:moshi-adapters:1.9.2
com.squareup.okhttp3:okhttp:4.8.1
com.squareup.retrofit2:converter-moshi:2.3.0
com.squareup.retrofit2:converter-scalars:2.3.0
com.squareup.retrofit2:retrofit:2.3.0
io.projectreactor:reactor-core:3.3.10.RELEASE
前面提到的pants build有严格的\u deps,这意味着“编译类路径中只包含直接依赖项和由这些依赖项导出的目标,而不是包含所有可传递的依赖项。”
这是一个java项目,与android无关。
我希望我有足够的细节。让我知道我应该补充什么。感谢dev社区的帮助。
暂无答案!
目前还没有任何答案,快来回答吧!