11

我是 android 开发的新手,我正在使用 IntelliJ Idea 12。一切都设置正确,但我面临的一个问题是我的 gen 文件夹中的 R.java 文件没有应该存在的代码。我认为这段代码应该是自动生成的,但它不存在。以下是有关我的项目结构的链接:

我不能发布两个以上的链接,所以这里是画廊的链接:http: //postimage.org/gallery/19189wei/

它包含我的 string.xml 、 main.xml 、 R.java 、 HaikuDisplay.java 所以我想知道问题出在哪里?

4

6 回答 6

3

我不会费心查看 R 文件——我的文件也是空的,没关系。尝试输入 R. 看看有什么可用的。如果你没有设置你的东西,请确保你没有 Importing Android.R in your imports - 这将覆盖你的 R 并使用 SDK 目录中的那个。希望有帮助。

于 2012-12-06T19:27:39.207 回答
3

我对想法 12 有同样的问题(想法 11 中没有这样的问题)。要修复它,您可能需要检查以下内容:

  • 打开 Module Settings(F4)/ProjectName/Module SDK 设置为 Android [版本]
  • 文件夹 'gen' 存在于项目根目录中并设置为 src (实际上它可以并且将会是空的,但我无法弄清楚为什么没有它它就无法工作。)
  • 更新 AndroidManifest.xml(只需在某处添加空间并保存)。
  • 如果想法仍然找不到您的任何 id 或字符串 - 尝试一个一个打开它,并用空格更新:)

经过这个想法会发现,布局文件夹中有很多xml,并且会知道所有的id、xml和字符串。

但是 R.java 文件仍然是空的,gen 文件夹将不包含空的 BuildConfig.java 文件,并且不会有其他 R.java 文件包含所有这些常量。

它看起来像想法 12 而不是想法 11 将其生成的 R.java 常量存储在项目文件夹 (.idea) 中,如果您使用“pom.xml”作为项目描述 - 您将需要在重新加载后再次检查所有这些点pom.xml 文件。

于 2012-12-13T07:37:17.067 回答
2

检查您的 AndroidManifest.xml 文件。想法 12 在 下放两个元素,只能有一个。删除任何你想要的,重建。

此外,您可以检查清单元素中的包值。确保它与您的项目相对应。Idea 12 为我的项目生成了以下内容,其中 com.awesome.skynetclient 作为根包:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.exeample.SkynetClient"
      android:versionCode="1"
      android:versionName="1.0">
于 2013-01-04T12:41:05.357 回答
0

import android.R;从文件顶部删除自动添加对我有用。

于 2014-01-04T20:25:08.070 回答
0

我对 Android Maven 项目有同样的问题。我的解决方案是查看项目历史记录,发现我的 Manifest.xml 文件以某种方式被修改,并且文件的路径也被更改,但上帝知道我没有进行这些更改。所以我只是恢复这些更改并重建项目。

于 2014-09-17T09:08:11.920 回答
0

我也发现了这个,可能是因为 IDE 想防止你错误地编辑 R.java 文件。

于 2014-01-13T02:43:39.453 回答