根据这个问题,我已经在Android Studio中设置了项目以使用Square Wire库。
Build
->Compile Project
工作正常。
2:03:10 PM Compilation completed successfully in 31 sec
但是,如果我打开生成的协议缓冲区文件之一,则Square包将不会被识别。
另一个症状是,从SquareMessage
类继承的方法在编辑器中显示为“无法解析方法”,即使它们可以正常构建和运行,它们也会编译错误。
除了build.gradle
在项目中为模块添加依赖项之外,我还需要做更多的事情吗?
感谢free3dom让我在这里走上正轨。
诊断
Sync Project with Gradle Files
Android Studio中的选项似乎使Project Structure
库保持最新。
但是,就我而言,有一些错误:
展开(不是很明显)链接将显示详细信息。我的线路运行库显示在错误的位置:
这似乎是我将JAR导入libs文件夹时的原始配置的宿命。
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}
随后,我将其更改为直接从Maven Central(按此处)导入,似乎旧设置从未被新设置覆盖。
修复
解决方法是从Project Structure
屏幕上删除库依赖项,然后Sync Project with Gradle Files
再次删除。
更多详情
您也可以通过.idea/libraries/wire_runtime_1_2_0.xml
直接打开直接查看资源使用了什么路径。
我坏的是:
<component name="libraryTable">
<library name="wire-runtime-1.2.0">
<CLASSES>
<root url="jar://$PROJECT_DIR$/MY_MODULE/libs/wire-runtime-1.2.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
删除并重新添加库后,将其更改root url
为:
<root url="jar://$USER_HOME$/.gradle/caches/artifacts-26/filestore/com.squareup.wire/wire-runtime/1.2.0/jar/44e7acbd5eb6f29698181dc3d67a60acf7efee80/wire-runtime-1.2.0.jar!/" />
更新资料
Android Studio v0.4.4显然修复了具有相同症状的其他错误,因此,如果您使用的是旧版本,则可能希望升级。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句