Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Include .java files as java source files in Android Studio to remove red circle with "J" on them

Today after update android studio my source folder in project marks as below("J" inside a red circle mark). How can I fix it? I tried clear caches, re-import project, use gradlew clean build, but it doesn't help. enter image description here

build.gradle

apply plugin: 'android'
apply plugin: 'android-apt'

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.3"


    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }
    }

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
    lintOptions {
        abortOnError false
    }
}

def AAVersion = '3.0.1'
dependencies {
   ......
}

apt {
    arguments {
     ....
    }
}
like image 466
Gorets Avatar asked Mar 08 '14 00:03

Gorets


Video Answer


3 Answers

I found some magical solution while playing with this

There are two possible solution you can try to make it correct (tricky one)

1.Replace this in your build.gradle file

java.srcDirs = ['src']   to   java.srcDirs = ['src/com']

2.Create a subdirectory inside src name it whatever you want, I prefer name it java like

src > java

move all your java package in to it and change the

java.srcDirs = ['src']   to   java.srcDirs = ['src/java']

These are the tricky solutions. It can be considered as a bug in Android Studio that it is not considering the java source set if it is the root of src directory but compiles fine.

After doing all the necessary changes sync your project with gradle and your yellow directory will be magically turned into blue.

Note : Even you have them in root there will be no effect on compilation as per my experience. Only Studio will not mark them as java sourcesets in IDE.

like image 142
Piyush Agarwal Avatar answered Oct 22 '22 09:10

Piyush Agarwal


  1. Open Project Structure in Android Studio(Cmd+;)
  2. Under modules Header over the left of the window, look onto right side of it , You will get to see three tabs one of which is Sources ,Select it.
  3. There, you will find the structure of your project which you have imported or might have created by self.
  4. Go for the src folder of it and wait for the sources link above that dialog with many others to get avail to apply onto it,grab it.
  5. Apply and OK
  6. Problem Solved.
like image 33
Prakhar1001 Avatar answered Oct 22 '22 08:10

Prakhar1001


I solved it just closing the project from android studio and remove the project from recent project. Re-import the project, it worked. If any one facing for android project he/she can try this. Thanks

like image 4
Android Killer Avatar answered Oct 22 '22 10:10

Android Killer