Android studio Android Studio内联编译器显示红色错误,但使用gradle编译效果良好
我已经在Android Studio中设置了我的项目,以使用Android studio Android Studio内联编译器显示红色错误,但使用gradle编译效果良好,android-studio,gradle,square-wire,Android Studio,Gradle,Square Wire,我已经在Android Studio中设置了我的项目,以使用 构建->编译项目工作正常 2:03:10 PM Compilation completed successfully in 31 sec 但是,如果打开一个生成的协议缓冲区文件,则无法识别Square包 另一个症状是,从SquareMessage类继承的方法在编辑器中显示为“无法解决方法”编译错误,即使它们构建和运行良好 除了在我的项目中为我的模块在build.gradle中添加依赖项之外,我还需要做些什么吗?感谢free3do
构建
->编译项目
工作正常
2:03:10 PM Compilation completed successfully in 31 sec
但是,如果打开一个生成的协议缓冲区文件,则无法识别Square包
另一个症状是,从SquareMessage
类继承的方法在编辑器中显示为“无法解决方法”编译错误,即使它们构建和运行良好
除了在我的项目中为我的模块在
build.gradle
中添加依赖项之外,我还需要做些什么吗?感谢free3dom让我走上了正确的道路
诊断
Android Studio中的Sync Project with Gradle Files
选项似乎使项目结构
库保持最新
但是,在我的案例中,有一些错误:
扩展(不是很明显)链接显示了细节。我的wire运行时库显示在不正确的位置:
这似乎是我最初配置的遗留问题,我将JAR导入libs文件夹
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}
随后,我将其更改为直接从Maven Central()导入,似乎旧设置从未被新设置覆盖
修复程序
修复方法是从项目结构
屏幕中删除库依赖项,然后再次将项目与Gradle文件同步
更多细节
通过直接打开.idea/libraries/wire\u runtime\u 1\u 2\u 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 />
更新
Android Studio v0.4.4具有相同的症状,因此如果您有较旧的版本,您可能希望升级。这些解决方案没有帮助我解决Android Studio 0.5.8中的相同问题
我描述了我对同一个问题的回答(我猜):
我刚刚删除了~/.AndroidStudioPreview目录(在Ubuntu中)。我错过了所有的Android Studio设置,但它仍然有效。简单解决方案
通过链接,它为我工作
从android studio左上方的菜单中选择文件
选项
选择选项:invalidatecache/Restart
它将打开一个对话框
单击带有选项的第一个按钮:invalidateandrestart
它将关闭Android Studio并重新启动。此外,它将开始重新编制项目索引
它解决了我的问题
转到文件使缓存无效/重新启动使缓存无效并重新启动
我以前也遇到过类似的问题,失效缓存并重新启动并没有解决它。我刚刚做了一个Gradle同步,一切正常。1)单击Gradle图标(android studio右侧)
2)单击刷新按钮,等待问题得到解决:D
如果以上所有答案都不适合你。
只需尝试将依赖项更新到最新版本。
它对我很有效。升级到Android Studio 3.1后,我遇到了这个问题。
我通过升级我使用的所有组件解决了这个问题。
因此,我在build.gradle(应用程序)中更改了以下条目:
升级SDK(阅读本说明时,请从“CompileSDK版本25”升级到“CompileSDK版本26”或更高版本):
//编译DK25版
编译DK26版
注释:此更改强制程序在下次同步期间下载/安装新sdk
升级appcompat-v7:
//实现'com.android.support:appcompat-v7:25.4.0'
实现'com.android.support:appcompat-v7:26.1.0'
升级firebase:
//实现'com.google.firebase:firebase广告:11.4.2'
实现'com.google.firebase:firebase核心:12.0.1'
实现'com.google.firebase:firebase广告:12.0.1'
在PROJECT build.gradle中,升级google服务:
//classpath'com.google.gms:googleservices:3.1.0'
classpath'com.google.gms:googleservices:3.2.0'
升级gradle(从4.4升级到4.6)。从gradle-wrapper.properties:
分配=https://services.gradle.org/distributions/gradle-4.6-all.zip
在这些更改之后,清理项目、使缓存无效/重新启动、删除.idea/libraries内容并重新同步(不确定顺序,但所有这些活动都为我解决了问题)。以下步骤有帮助
关闭项目,并在项目文件夹中删除project/.idea
删除~/.gradle
文件夹
再次打开项目。一切都应该解决。在我的情况下,由于某种原因,Android插件版本没有设置。我确实尝试过清除缓存并删除.gradle和.idea,但没有成功,最终在漫游了几个小时后,我发现了这个
在idea中删除libraries文件夹为我解决了这个问题。它位于项目的根/.idea/库中
我正在使用Android Studio 3.1.4
删除.gradle和.idea文件夹
我的项目解决了这个问题。我的黑客修复程序-
打开build.gradle
文件
删除依赖项{}
粘贴在记事本中,可实现超级安全的临时保存
在build.gradle
文件中选择“立即同步”
等待同步失败
将依赖项粘贴回
再次“立即同步”
尝试了很多解决方案,这是我唯一的修复方法。我尝试了上面的大多数修复方法,实际有效的方法是删除所有的.AndroidStudio配置文件夹,然后重新启动Android Studio
- 地点:
<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!/" />
provided fileTree(include: ['xxx.jar'], dir: '../moduleX/libs')
1. Close current project
2. Go to your project path C://User/Android studio project/your project
3. Delete two files .gradle and .idea
1. Close Android studio
2. Go to the file C://Users/your username/
3. Delete files .gradle , .cache ,.android, .AndroidStudio3.5
implementation "androidx.activity:activity-ktx:1.2.2"