2015-07-15 22 views
11

Có cách nào làm cho các thư viện phụ thuộc tải xuống gradle vào thư mục dự án, giống như maven không? Tôi biết rằng gradle giữ cache của nó trong thư mục máy cục bộ, nhưng làm thế nào tôi có thể biết thư viện nào sẽ được sử dụng cho dự án của tôi, đặc biệt là thư viện mà tôi đã định nghĩa trong tệp build.gradle có sự phụ thuộc riêng của nó?Làm thế nào để làm cho Gradle Download Dependency Libraries vào thư mục dự án

+0

Xem tại đây: http://stackoverflow.com/questions/26697999/gradle-equivalent-to-mavens-copy-dependencies – Opal

+0

Vui lòng xem http://stackoverflow.com/q/31662781/746347 – mixel

Trả lời

10

Để biết thư viện nào sẽ được sử dụng cho dự án của bạn, bạn có thể sử dụng tác vụ phụ thuộc. Nó sẽ giúp bạn tìm ra sự phụ thuộc của module của bạn và các phụ thuộc đệ quy của nó.

Nếu tên mô-đun của bạn là app, thì bạn có thể thử gradle :app:dependencies trong thư mục dự án. Bạn sẽ nhận được một cái gì đó như dưới đây là đầu ra.

compile - Classpath for compiling the main sources. 
\--- com.android.support:appcompat-v7:22.2.0        
    \--- com.android.support:support-v4:22.2.0 
      \--- com.android.support:support-annotations:22.2.0 

Ở đây com.android.support:appcompact-v7:22.2.0 là phụ thuộc của mô-đun và phụ thuộc bên dưới là phụ thuộc đệ quy của nó.

Nếu bạn thực sự muốn có được những phụ thuộc trong thư mục dự án của mình thì bạn có thể tạo một tác vụ cho nó như thế này.

task copyDependencies(type: Copy) { 
    from configurations.compile 
    into 'dependencies' 
} 

bây giờ bạn có thể chạy gradle :app:copyDependencies để nhận tất cả các phụ thuộc tại vị trí <projectDir>/app/dependencies. Lưu ý rằng điều này chỉ cung cấp cho bạn các phụ thuộc trong thư mục dự án của bạn và gradle vẫn giải quyết các phụ thuộc từ bộ nhớ cache cục bộ.

+0

Tôi nhận được lỗi sau Không thể nhận được thuộc tính không xác định 'biên dịch' cho vùng chứa cấu hình. –

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