1 Câu hỏi: Chuyển từ 'biên dịch' sang 'triển khai' gây ra lỗi DexPathList

câu hỏi được tạo ra tại Fri, May 3, 2019 12:00 AM

Tôi đang cố gắng cập nhật các phụ thuộc của mình để sử dụng thông số triển khai /api mới thay vì biên dịch. Đây là một thư viện chung mà tôi đang viết mà sau đó tôi sử dụng trong ứng dụng của mình thông qua jitpack.

Khi tôi thực hiện chuyển đổi đơn giản từ biên dịch sang triển khai, tôi gặp lỗi sau (chỉ các bit quan trọng) khi sử dụng thư viện trong ứng dụng của mình:

java.lang.NoClassDefFoundError: Failed resolution of: Lcom/bumptech/glide/request/RequestOptions;

Caused by: java.lang.ClassNotFoundException: Didn't find class "com.bumptech.glide.request.RequestOptions" on path: DexPathList

Tôi đã thử làm sạch và xây dựng lại và nó không giúp được gì. Lần thứ hai tôi chuyển trở lại để biên dịch các cuộc gọi, mọi thứ đều hoạt động tốt.

Tôi sẽ lưu ý rằng thư viện sẽ xây dựng tốt trong mọi trường hợp.

Cách sử dụng sau hoạt động (mặc dù cảnh báo tôi rằng biên dịch sẽ không được chấp nhận):

    compile fileTree(dir: 'libs', include: ['*.jar'])
    testImplementation 'junit:junit:4.12'
    compile 'com.github.ybq:Android-SpinKit:1.2.0'
    compile 'io.reactivex.rxjava2:rxandroid:2.1.0'
    compile 'androidx.appcompat:appcompat:1.0.2'
    compile "com.github.bumptech.glide:glide:4.4.0"
    compile 'androidx.recyclerview:recyclerview:1.0.0'
    compile "com.github.chrisbanes:PhotoView:1.3.1"
    compile 'com.google.android.material:material:1.0.0'

Phần sau đây đưa ra lỗi trên (cũng đưa ra lỗi nếu tôi sử dụng api thay vì triển khai):

    implementation fileTree(dir: 'libs', include: ['*.jar'])
    testImplementation 'junit:junit:4.12'
    implementation 'com.github.ybq:Android-SpinKit:1.2.0'
    implementation 'io.reactivex.rxjava2:rxandroid:2.1.0'
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation "com.github.bumptech.glide:glide:4.4.0"
    implementation 'androidx.recyclerview:recyclerview:1.0.0'
    implementation "com.github.chrisbanes:PhotoView:1.3.1"
    implementation 'com.google.android.material:material:1.0.0'

Tôi cũng sẽ thêm rằng nếu tôi chỉ chuyển glide sang biên dịch thì nó sẽ có cùng một lỗi nhưng về một sự phụ thuộc khác. Có ai có thể giúp tôi tìm hiểu thứ này không? Bây giờ tôi chỉ có thể biên dịch nhưng tôi muốn cập nhật cái này.

    
1
1 Câu trả lời                              1                         

Sau nhiều giờ gỡ lỗi, cuối cùng tôi cũng đã tìm ra nó

classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'

Cập nhật plugin maven gradle trong thư viện của tôi lên 2.1 từ 1.5 đã giải quyết vấn đề

    
1
2019-05-03 23: 55: 29Z
nguồn đặt đây