android工程导入r无效,IntelliJ想法-Android Studio无法在导入的项目中解析R?

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值