18

I am migrating a project from Eclipse to AndroidStudio. I have a project used as a lib in this project. This lib is called PullToRefresh.

I've tried many ways to import this project to AS, but anyting I try works.

In my project I have this folder structure:

Project Root
+-- app
|   +-- builds
|   +-- libs
|   |   +-- PullToRefresh (my lib project)
|   +-- src
|   |   +-- main (java code and resources)

In the build.gradle, I've tried to do this:

dependencies {
    compile project(":libs:PullToRefresh")
}

But I'm getting this error message:

Gradle 'my_project' project refresh failed: Project with path ':libs:PullToRefresh'
could not be found in project ':app'

2 Answers 2

48

Android Studio works on project-modules concept,All your modules should be inside a root directory(Your Project Directory). One module can be depended on other module/modules. Your libraries are considered as different modules under same project and your main module(app in your case) depends on them.

Change your project structure a little bit :

Project Root
+-- libs
    +-- PullToRefresh (my lib project)
+-- app
|   +-- builds
|   +-- src
|   |   +-- main (java code and resources)
    +-- .....
+--settings.gradle

Include this line in your settings.gradle

include ':libs:PullToRefresh'

Your build.gradle looks fine. I suggest you to change your directory name from libs to library because use libs for your jar dependency not for module dependencies.

and keep this in your main module's build.gradle file :

dependencies {
    compile project(":libs:PullToRefresh")
}
Sign up to request clarification or add additional context in comments.

4 Comments

Settings.gradle should be a directory level higher, directly under project root. Though if it's working then it's a bit of a mystery to me.
@ScottBarta ya :) I think I am poor in drawing. Actually it looks like this in Android studio so made it in this way, I checked it again its wrong. I felt the same what you said after posting. Let me do some correction if it is misleading.
@ScottBarta really! In my case, the settings.gradle is a level higher. I think pyus13 had mistook.
It works, but now 'libs' is treated as a module as well and it shows up in Android Studio. Any idea how to ignore it?
8

From the "Help" menu option search for "import module" and then a wizard will appear!

1 Comment

This worked for me, but I couldn't find the gradle config as a result of this action.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.