TG-*_*G-T 93 android android-studio
我在AndroidStudio中导入twitter4j,在build.gradle中使用以下内容:
dependencies {
compile 'com.android.support:support-v4:18.0.+'
compile files('libs/twitter4j-core-3.0.4.jar')
}
Run Code Online (Sandbox Code Playgroud)
项目编译得很好,我可以毫无问题地创建twitter对象.但是,在Android studio中,引用该库的任何内容都显示"无法解析符号"并显示为红色.要让Android Studio识别库,我需要做些什么?
我已经尝试重建项目,./ gradlew clean,关闭并重新打开我的项目.
doy*_*doy 228
不知道这是否有效但是到目前为止我唯一的想法:右键单击AS中文件树中的jar文件,然后选择"Add as library ..."
编辑:您可以执行"文件" - >"无效缓存...",并选择"无效并重新启动"选项来解决此问题.
编辑2:此修复程序应适用于所有类似的事件,而不是twitter4j特定的解决方案.
Nau*_*aun 33
尝试在"文件">"项目结构">(选择项目)>"依赖项"中更改依赖项的顺序.
Invalidate Caches不适用于我,但将我的构建从列表底部移到顶部.
Geo*_*rov 11
这对我有用.
在"项目"面板中,右键单击项目名称,然后Open Module Settings从弹出菜单中进行选择.
然后将其更改为Compile SDK Version可用的最低版本(您在项目中设置的最小sdk版本).等待android studio加载所有内容.
它会给你一些错误,忽略它们.
现在转到你的java文件,android studio会建议你导入
import android.support.v4.app.FragmentActivity;
导入它,然后返回Open Module Settings并将编译sdk版本更改回之前的版本.
等待事情加载瞧.
当我在我的项目中遇到这个问题(红色代码但它们工作正常)时;
首先,我做到了 (File -> Indicate Cashes) --> (Invalidate and Restart)。
最后,我在我的应用程序中重新同步我的 build.gradle 文件。问题解决后。
Invalidate Caches / Restart 这次对我不起作用。
找到了这样的解决方案:
删除build.gradle 中的compile ***orimplementation ***行。
清洁和重建。错误应该在这里提出。
将步骤 1 中的行添加回 build.gradle。
清洁和重建。
奇怪的...
小智 5
我的Android应用程序也存在此问题,具体取决于我自己的一些Android库(使用Android Studio 3.0和3.1.1)。
每当我更新一个库并返回到应用程序,触发Gradle Sync时,Android Studio就无法检测到我对该库进行的代码更改。编译工作正常,但是Android Studio使用lib在某些代码上显示了红色错误行。
经过调查,我发现这是因为gradle一直指向我的库的旧编译版本。如果转到yourProject / .idea / libraries /,您将看到xml文件列表,其中包含指向库的编译版本的链接。这些文件以Gradle__artifacts _ *。xml开头(其中*是您的库的名称)。
因此,为了使Android Studio能够获取您的库的最新版本,您需要删除这些Gradle__artifacts _ *。xml文件,然后Android Studio将重新生成它们,指向您库的最新编译版本。
如果您不想每次单击“ Gradle sync”(谁愿意这样做...)时都手动执行此操作,则可以将此小gradle任务添加到应用程序的build.gradle文件中。
task deleteArtifacts {
doFirst {
File librariesFolderPath = file(getProjectDir().absolutePath + "/../.idea/libraries/")
File[] files = librariesFolderPath.listFiles({ File file -> file.name.startsWith("Gradle__artifacts_") } as FileFilter)
for (int i = 0; i < files.length; i++) {
files[i].delete()
}
}
}
Run Code Online (Sandbox Code Playgroud)
为了使您的应用在执行gradle同步之前始终执行此任务,您只需转到Gradle窗口,然后在yourApp / Tasks / other /下找到“ deleteArtifacts”任务,右键单击它并选择“执行同步之前”(请参见下文)。
现在,每次执行Gradle同步时,Android Studio都会被迫使用您的库的最新版本。
| 归档时间: |
|
| 查看次数: |
110356 次 |
| 最近记录: |