2012-10-25 30 views
26

tôi vừa mới bắt đầu chơi với hệ thống xây dựng gradle dành cho Android.Các tệp Jar trong thư mục libs không được sử dụng trong Android Gradle build

Tuy nhiên tôi không thể xây dựng một trong các dự án của mình. Nó phụ thuộc vào một cái lọ trong thư mục libs /.

Làm gradle build không thành công trong tác vụ compileDebug vì tất cả các lớp từ tệp jar bị thiếu.

Đây là dự án thư viện! Đây là tệp build.gradle của tôi:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.2' 
    } 
} 

apply plugin: 'android-library' 

android { 
    target='android-16' 
    sourceSets { 
     main { 
      manifest { 
       srcFile 'AndroidManifest.xml' 
      } 
      java { 
       srcDir 'src' 
      } 
      res { 
       srcDir 'res' 
      } 
      assets { 
       srcDir 'assets' 
      } 
      resources { 
       srcDir 'src' 
      } 
     } 
    } 
} 

Tôi có thiếu thứ gì đó hiển nhiên không?

Goddchen

Trả lời

59

chỉ tìm thấy câu trả lời bản thân mình:

Có vẻ như phiên bản hiện tại của các plugin Android Gradle không tìm kiếm lọ trong libs/thư mục. Vì vậy, bạn phải thêm chúng mình:

dependencies { 
    compile files('libs/mylib.jar') 
} 

hoặc

dependencies { 
    compile fileTree(dir: 'libs', include: '*.jar') 
} 

Nơi này bên trong namespace android như thế này:

android { 
    target = "android-15" 

    dependencies { 
     compile fileTree(dir: 'libs', include: '*.jar') 
    } 
} 
3

Chỉ trong trường hợp không ai trong số các giải pháp làm việc cho bạn, bạn có thể muốn cung cấp đường dẫn đến * .jar theo cách thủ công:

compile files('../<your-library-folder>/<your-library>.jar') 

Phần '../' có nghĩa là Gradle sẽ tìm kiếm thư viện bắt đầu từ thư mục dự án gốc (không phải mô-đun ứng dụng).

+0

công trình này! cảm ơn! –

Các vấn đề liên quan