android - রচন - লাইব্রেরির গুরুত্ব



গ্রেড 4.x এপিআই ব্যবহার করে আয়ার লাইব্রেরির কারণ অনুপস্থিতির অনুপস্থিত ব্যবহার করুন (1)

আমি এটি সমাধান করতে সক্ষম হয়েছি। মূল সমস্যাটি ছিল এপিআই ব্যবহার করে গ্রেডেল ৪.০ সহ অ্যান্ড্রয়েড ও

dependencies {
    api 'com.squareup.okhttp3:logging-interceptor:3.4.1'
    api "io.reactivex.rxjava2:rxandroid:$versions.libs.rxAndroid"

বেশিরভাগ উত্তর এই জাতীয় কিছু সম্পর্কিত

publishing {
    publications {
        mipartner(MavenPublication) {
            groupId '...'
            artifactId '..'
            version 1.0
            artifact "$buildDir/outputs/aar/myLib-release.aar"

            //generate pom nodes for dependencies
            pom.withXml {
                def dependenciesNode = asNode().appendNode('dependencies')
                configurations.compile.allDependencies.each { dependency ->
                    def dependencyNode = dependenciesNode.appendNode('dependency')
                    dependencyNode.appendNode('groupId', dependency.group)
                    dependencyNode.appendNode('artifactId', dependency.name)
                    dependencyNode.appendNode('version', dependency.version)
                }
            }
        }
    }

    repositories{
        maven {
            url "https://some.url.com"
        }
    }
}

তবে এখানে ফলাফল * .পোমে কোনও নির্ভরতা অন্তর্ভুক্ত নেই, এপিকে এই লাইনটি পরিবর্তন করার পরে নির্ভরতাগুলি মোতায়েন করা পোমে অন্তর্ভুক্ত করা হয়েছে!

configurations.api.allDependencies.each { dependency ->

এর পরে আপনি সহজেই আর ফাইলটি গ্রাস করতে পারেন

dependencies {
    api "com.mylib.net:mylib:1.0"

যখন আমি গ্রেডেল ৪.০ এর সাথে মডিউলের পরিবর্তে * .আর ফাইল দিয়ে একটি অ্যাপ তৈরি করি এবং প্রয়োগ এবং এপিআই সম্পর্কিত নথিটি অনুসরণ করি, আমি এপিআই ব্যবহার করে আশা করি যে অন্তর্ভুক্ত আআর ফাইলটিতে সমস্ত নির্ভরতা অন্তর্ভুক্ত রয়েছে তবে এটি নেই।

যখন তুমি কর

git clone https://github.com/hannesa2/aar_dependency
./gradlew clean assembleDebug

মানে

dependencies {
    api project(':mylibrary')

এটি সঠিকভাবে কাজ করে।

কিন্তু যখন আমি পূর্ববর্তী উত্পন্ন * .আআর ফাইলটি নির্ভরতা হিসাবে লিব-মডিউলটির অন্তর্ভুক্ত ব্যবহার করি

 dependencies {
    api 'com.example.my.mylibrary:[email protected]'

( ডেমো অ্যাপ্লিকেশনটিতে কেবল করুন)

git checkout with_aar
./gradlew clean assembleDebug

আমি এই মধ্যে চালানো

টাস্ক: অ্যাপ্লিকেশন: ট্রান্সফর্মস ক্লাস উইথডিজুর্গফোর্ডডব্যাগ ব্যতিক্রম থ্রেড "মূল" java.lang.TypeNotPPressException টাইপ io.reactivex.ObservableTransformer sun.invoke.util.BytecodeDescriptor.parseSig (বিটেকোডেস্ক্রিপ্টঅর্ডার.জ্যাভিয়া.জ্যাভিয়া> .parseMethod (BytecodeDescriptor.java:63) at sun.invoke.util.BytecodeDescriptor.parseMethod (BytecodeDescriptor.java:41) at java.lang.invoke.MethodType.fromMethodDescriptorString (মেথডটাইপ.কম। গুগল.ডোমা। org.objectweb.asm.MethodVisitor.visitInvokeDynamicInsn.Ibis.vjit.jnbisbisbisvisit.net এ ইঞ্জিনিয়ার (অজানা উত্স) এ বিল্ড.অ্যান্ড্রয়েড.ডেসুগার.লাম্বডা ডিজুসারিং $ ইনভোকাডাইনামিক রাইটার লেখক.ভিসিটইনভোকডিনামিকআইএনএসএন (ল্যাম্বডাডিজুয়ারিং.জভা ৩৯৯৯)

যেহেতু আমি সাধারণভাবে আমাদের সংস্থা মাভেন নেক্সাসে আর্ট আর্টিফিকেটগুলি আপলোড করেছিলাম, তাই ঠিক কী হয়েছে তা দেখাতে আমি এই ডেমো-রেপো তৈরি করেছি। ডেমো অ্যাপে বা ম্যাভেন ব্যবহার করে আমি একই সমস্যা দেখতে পাচ্ছি।

কেউ কি জানে যে আমি কী ভুল করেছি?





aar