IntelliJ想法-Android Studio无法在导入的项目中解析R?
我正在尝试新的Android Studio。 我已经使用build gradle选项从eclipse中导出了一个项目。 然后,将其导入Android Studio。 gen下的R.java文件的红色圆圈上有一个j。 并且在我的源文件中,只要引用资源,例如 “ R.layout.account_list”等
我以前从未使用过Intellij。 我们将不胜感激,因为有关Android Studio的答案显然还不多。 谢谢!
30个解决方案
34 votes
按F4进入“项目结构”,在左侧检查SDK
单击模块--->源选项卡,检查gen和src作为源
PS:答案已有一年多了,菜单已经更改。
Crossle Song answered 2020-06-16T17:30:11Z
28 votes
文件->使缓存无效
然后
重新启动应用程序
Mehmet Ali SAVAŞ answered 2020-06-16T17:30:39Z
13 votes
到目前为止,网上的答案都没有帮助。 Build> Make Project对我不起作用。 对我而言,就像选择其他选项一样简单(在Android Studio 1.3.1上):
生成>使模块为“模块名称”
Kevin Cooper answered 2020-06-16T17:31:03Z
7 votes
就我而言,我有一个从Eclipse导入的Activity文件,其内容如下:
import android.R;
因此,当我注释掉该行后,所有R类都已解析为SDK,所有内容均已正确编译到我的包中。 我仅在将项目从Mac移至Windows计算机时才注意到该问题。
hoss answered 2020-06-16T17:31:28Z
4 votes
当我开始使用build.gradle合并必要的数据(signingConfigs)以构建签名的.apk时,这个问题开始出现。 从命令行看似成功的构建之后,我发现使用R. *进入任何类都无法解析所有R. *引用。
这里的答案对我没有帮助。 我决定重新导入该项目,它神奇地解决了该问题。 文件/导入项目...,然后在我的应用程序根文件夹中选择build.gradle文件。 我想知道为什么重新导入解决了这个问题:)
GaryAmundson answered 2020-06-16T17:31:53Z
3 votes
这可能是由于资源构建失败
解决此问题后,仅Build > Rebuild Project就可以解决问题
MonoThreaded answered 2020-06-16T17:32:18Z
2 votes
转到文件->设置->编译器现在检查使用外部构建
然后重建项目
Kuluval answered 2020-06-16T17:32:42Z
2 votes
在很多情况下,我对这个问题感到沮丧,尤其是在将一个项目库作为另一个项目的一部分集成时。 在最近出现此困扰的问题时,我的Android lib项目正在使用WebView。 事实证明,Gradle在名为“ web”的子目录中构建R.class文件,该子目录的路径与我的源代码路径无关。 当我导入它时,我的问题就消失了。 我学到了什么? 将来,只需在文件中搜索R.class并记下它所在的路径即可。 然后使用该路径将包导入到您的代码中。 您必须手动执行此操作确实很糟糕。 Gradle应该自动导入它生成的包。
AndroidDev answered 2020-06-16T17:33:03Z
1 votes
首先检查是否有导入android.R; 在班级顶部,当在Android Studio中启用自动导入功能时,就会发生这种情况。
之后,注释使用R变量的代码的所有行(可以注释整个类或...)然后运行应用程序,它会重新生成R变量,您可以取消注释代码。
sadegh saati answered 2020-06-16T17:33:28Z
1 votes
除了上面提供的答复外,这是在IntelliJ(不是Studio)中对我有用的东西:
您需要将Android方面附加到现有的Android模块。 为此,请从“模块设置”中的模块列表中选择模块,单击顶部的“ +”按钮,然后选择“ Android”。 请参阅[https://www.jetbrains.com/idea/webhelp/enabling-android-support.html。]
crazy horse answered 2020-06-16T17:33:53Z
1 votes
解决方案是打开项目结构窗口。 [通过按Command +; 在Mac ox s上。 我不知道其他平台的主要捷径是什么。 您应该可以在“文件”菜单下找到它。]然后单击“项目设置”部分下的“模块”,然后显示您的项目,最后将生成的R.java标记为Sources。
我正在使用Intellij idea 14.0 CE。生成的R.java位于build / generated / source / r / debug / com / example / xxx
真的很难第一次找到。
Songlin answered 2020-06-16T17:34:23Z
1 votes
请按照以下五个步骤操作:
步骤1 ===>删除(CTRL X)XML清单文件中的其他标签。
步骤2 ===> Open Build-> Clean项目。
步骤3 ===>打开XML清单文件,并通过最后一个附加标签,例如:标记清单文件示例:()
步骤4 ===>再次执行步骤2。
步骤5 ===>打开工具-> Android->用'Gradle'同步项目。
我遇到了同样的问题,但在完成所有步骤后,它对我来说还是有效的。
Zrelli Majdi answered 2020-06-16T17:35:09Z
1 votes
在IntelliJ 14上
检查是否将生成的源排除在外。 通常在项目结构-> [模块]->路径->编译器输出中:“继承编译输出路径”
Fabio Bonfante answered 2020-06-16T17:35:33Z
1 votes
我的问题是我在drawable文件夹中有文件“ default.jpg”,由于某种原因,每个资源都没有解决。 在删除该文件后已修复!
Ingo Kodba answered 2020-06-16T17:35:53Z
1 votes
我也面临着同样的问题,我在stackoverflow上经历了很多回答。 然后,我找到了一个解决方案,可以帮助我解决此问题。
在AndroidManifest.xml文件中检查包名称。 在将另一个项目复制粘贴到新项目时,我忘记更改它。
Vinit Thaker answered 2020-06-16T17:36:18Z
1 votes
如果没有错误,则应检查所有文件,然后再次在以下位置重建项目:
生成>重建项目。
或在:
文件>设置>构建,执行,部署>编译器
检查use external build,然后重建项目。
Gladys Sanchez answered 2020-06-16T17:36:55Z
1 votes
关于以下内容,来自Crossle Song的答案
按F4进入“项目结构”,在左侧检查SDK
单击模块--->源选项卡,检查gen和src作为源
尽管显示了“我们稍后将提供UI来配置项目设置.... etc”的消息,但对我来说仍然有效。
Tim Medhurst answered 2020-06-16T17:37:28Z
0 votes
这些答案都没有帮助我!
我的问题不是问题! 该程序可以完全编译并在设备上运行,但是IDE给了我一个令人讨厌的语法错误。 它强调了包含“ R”的代码行。
我可以解决此问题的方法:
我刚刚在“ myapp / gen / com.example.app /”文件夹中添加了这三个类:
BuildConfig
package com.example.app;
public final class BuildConfig {
public final static boolean DEBUG = true;
}
表现
package com.example.app;
public final class Manifest {
}
[R
package com.example.app;
public final class R {
}
Behzad answered 2020-06-16T17:38:14Z
0 votes
我解决了设置JAVA_HOME,CLASSPATH的问题。
人们有时在设置Java_path时会跳过JAVA_HOME和CLASSPATH。
因此,请尝试检查环境变量。
CLASSPATH->。;
JAVA_HOME-> C:\ Program Files \ Java \ jdk(version)或Java安装位置
然后检查可能有错误的xml文件(不要命名按钮,文本等众所周知的内容)
Fukkong answered 2020-06-16T17:38:56Z
0 votes
就我而言(Linux,Android Studio 0.8.6),以下帮助:
文件>项目结构>模块>选择主模块>选择其构面>生成的源
更改“生成文件目录”的值:
从
MY_PATH/.idea/gen
至
MY_PATH/gen
没有编译该代码,apk将成功构建并运行
但是Android Studio编辑器会在所有子包类中突出显示mypackage.R.any作为“无法解析”
nxdrvr answered 2020-06-16T17:39:42Z
0 votes
我有同样的问题,并通过删除额外的库来解决。
要尝试此解决方案,请转到文件>项目结构(在Mac上,您可以使用命令“ Apple;”)
然后在左侧标签上选择应用。 转到“依赖项”选项卡,然后删除额外的库。
German answered 2020-06-16T17:40:11Z
0 votes
检查build.gradle中的构建工具版本(适用于模块应用)。 然后转到android sdk管理器,查看是否安装了该版本(如果未安装该版本),或将生成工具版本更改为如下所示安装的版本。
android {
buildToolsVersion "22.0.1"
..
..
..
}
user3013823 answered 2020-06-16T17:40:31Z
0 votes
由[https://stackoverflow.com/users/1373278/hoss]发布的解决方案以上为我工作。 我在这里复制它,因为我还不能评论hoss的帖子:
卸下.idea从您的活动文件中获取。
我的设置:
Android Studio 1.2.2
将项目从一台Mac导出到Git(一切正常)。 然后,我从Git将项目导入到另一台Mac上。 多数民众赞成在它停止解析资源文件时。
我在此线程上尝试了所有操作:
使缓存无效并重新启动
删除.iml文件和.idea文件夹,然后重新导入项目
清理并重建项目
除了从我的活动Java文件中删除.idea之外,什么都没起作用。
为避免将来出现此问题,请在您的.gitignore文件中添加.idea文件夹。 git有一个不错的git插件,用于Android Studio中的gitignore。 安装此插件并右键单击.idea > Add to .gitignore
dessertcook answered 2020-06-16T17:41:35Z
0 votes
只是清理项目,然后将您的项目与gradle文件同步。
Fakher answered 2020-06-16T17:41:55Z
0 votes
就我而言,我发现引用了“ android.R.layout.account_list”而不是“ R.layout.account_list”。 只需删除“ android”。 可以解决问题。 希望能提供帮助,因为有时您太专注于时可能会忽略。
David C. answered 2020-06-16T17:42:15Z
0 votes
就我而言:
我必须复制参考R文件。 即右键单击gen / / R,然后复制参考。 然后将其粘贴到代码中无法解析的R上。
那为我解决了(在这里尝试了所有其他方法之后)。 仍然不确定为什么说实话。
manyways answered 2020-06-16T17:42:43Z
0 votes
我有同样的问题。 在以下三个文件中的两个文件中,软件包名称错误。 我手动更新了程序包名称,然后一切又重新开始工作。
gen / com / example / app / BuildConfig.java
gen / com / example / app / Manifest.java
gen / com / example / app / R.java
我不确定是什么原因导致它们发生更改,因为我之前从未修改过这些文件。
Randall Sutton answered 2020-06-16T17:43:21Z
0 votes
从Eclipse导入项目时发生此错误。 原因是某些xml文件有错误。 检查所有XML文件中的错误。 包括androidmanifest.xml以及值,主题,样式,布局文件夹等。xml中的警告是可以的,但是错误会产生此错误。
之后,执行“清理项目”并重建。
live-love answered 2020-06-16T17:43:46Z
0 votes
对我来说,使用Android Studio 1.5.1,解决方案是使用稍有不同的名称重新创建整个项目。
我认为它没有处理应用程序名称“ Kommentator_AS”,因为该包在多个地方都被命名为“ Kommentator”。
Berit Larsen answered 2020-06-16T17:44:10Z
0 votes
我用intellij 2016.1遇到了此问题,因为我已将生成的源设置为不位于基础项目目录中的目录。
例如,在Android方面中,“生成的源”下的内容如下:
target
当我将其更改为target时,问题就消失了。
同样,当我将其更改为target时,问题也消失了,但是我必须进行一次深层清理才能使它重新编译,方法是:
target
并删除所有生成的目录和target目录。
rmin answered 2020-06-16T17:44:56Z