Gen 已经存在,但不是源文件夹

我正在开发我的 Android 项目,在我删除了一个未使用的库之后,我得到了 错误:

myproject/gen already exists but is not a source folder. Convert to a source folder or rename it

在我的活动代码中,无法解析来自 R.java的所有资源。

我试过了,在“ Source”选项卡下右键单击 project = > Java Build Path = > ,我添加了 gen/as Source。但这对解决问题毫无帮助。

为什么,如何摆脱这个问题?

——更新——

我发现,eclipse 还抱怨“ Project 没有 Project.properties 文件!编辑项目属性设置一个。”但是我的项目下有 project.properties 文件。它为什么抱怨?我已经清理了项目和“修复项目属性”,但它没有帮助。

57389 次浏览

The gen folder is where ADT creates the R.java file, which specifies your resource definitions. i.e. your resources (colours, dimensions, layouts, etc) are converted to code, and placed in R.java in the gen folder.

So when you build the app you need to ensure the gen folder is treated as a source code folder by your IDE, as it contains the R class.

In your IDE, you need to mark the gen folder as a source folder, so its content are built alongside your source.

Your acceptance rate is very low. If you want people to help you, you need a high acceptance rate.

I get the same problem.

Two actions, first:

    1.Right click on the project and go to "Properties"
    2.Select "Java Build Path" on the left
    3.Open "Source" tab
    4.Click "Add Folder..." and check "gen" and "src"

second: (because the previous action asked me to remove something... I do not remember what it was...)

    1. Right click on the project and go to "Properties"
    2. Select "Java Build Path" on the left
    3. Open Libraries "tab"
    4. Add an external JAR. Add the Google API that is in your android directory (android-sdk\platforms\android-yourversion

And now it works for me!

The last time I had this issue, it was because I switched the source to another branch behind the scenes. Once I closed Eclipse and relaunched, the issue went away.

I met the same problem, solved it as following:

In Package Explorer, right-click the gen folder, find "Build Path - Use as Source Folder" and click it.

That is it. I hope it will help.

I had some of the same symptoms, but solved it differently:

I found out that I had two files in the drawable dir that were conflicting: icon.png and icon.xcf. This made R fail generation. I moved the icon.xcf out of the way and R generated and the project compiled.

i had to delete the entire gen folder within eclipse not from file explorer. then did a clean and it was rebuilt. funny this occured right after i ran a Lint HTML report.

Solution :

Step 1 :

  • Right click on the project and go to "Properties"
  • Select "Java Build Path"
  • Switch to "Source" tab Remove all sources from source folder on Build Path
  • Restart Eclipse

Step 2 :

  • Right click on the project and go to "Properties"
  • Select "Java Build Path"
  • Switch to "Source" tab
  • Click "Add Folder..." and check "gen" and "src" source folder on Build Path
  • Restart Eclipse

Final

Build Project(s)

Happy Coder :)

I had SVN configured for a project with the same problem, deleted all folders and files, retrieved it again from SVN and still no luck. The only thing that helped was reverting the changes, and deleting/re-importing projects to the workspace. Hope this helps

Go to the project properties then Go to Java Build Path then Remove already exist folder then Click Add Folder then Add the Source and gen folder. then Press ok............It will work.......

My solution was to paste the following into the .classpath file:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="gen"/>
<classpathentry kind="output" path="bin/classes"/>
</classpath>
  1. Right click on the project and go to Properties
  2. Select Java Build Path on the left
  3. Open Source tab
  4. Click Add Folder... and check gen and src

We also need to check our import statements, If we have imported 'android.R' got to remove that.

This happens because your .classpath file got wiped out somehow. This file contains all the information from the Java Build Path tab under Project Properties. You could add in all information manually but there's an easier way of fixing this problem.

If you have a copy of the .classpath file on your machine, you can just copy and paste it into your project directory.

This is caused by using the wrong importer in Eclipse. If you have Android projects, you need to import them into your workspace with Android->Existing Android Code, not General->Existing Projects.

enter image description here

I tried the suggestions given here and still had the problem. Finally, it turned out that Eclipse got its imports wrong. For some reason it added the words "gen" and "src" to the beginning of the import line. I had to change all the import lines from

import gen.org.qtproject.qt5.android.bindings.QtApplication;

to

import org.qtproject.qt5.android.bindings.QtApplication;

Once I did that, everything came back to normal.