ওএস স্বতন্ত্র পথ 'মেটা-আইএনএফ / লিসেনসি' এর সাথে একাধিক ফাইল পাওয়া গেছে


332

আমি যখন আমার অ্যাপটি তৈরি করি তখন আমি নিম্নলিখিত ত্রুটিটি পাই:

ত্রুটি: কার্য ': অ্যাপ্লিকেশন: ট্রান্সফর্ম রিসোর্স উইথমেজারজ জাভাআরেসফোর্ডডব্যাগ' এর জন্য কার্যকর করা ব্যর্থ। ওএস স্বতন্ত্র পথ 'মেটা-আইএনএফ / লিসেনসি' এর সাথে একাধিক ফাইল পাওয়া গেছে

এটি আমার বিল্ড.gradle ফাইল:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "cn.sz.cyrus.kotlintest"
        minSdkVersion 14
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

        javaCompileOptions{
            annotationProcessorOptions{
                includeCompileClasspath = true
            }
        }
        multiDexEnabled true
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
 /*       exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'*/
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
    compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
    compile 'com.android.support:appcompat-v7:25.3.1'
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:design:25.3.1'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5.1'
    releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.1'
    testCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.1'
    compile 'com.github.GrenderG:Toasty:1.2.5'
    compile 'com.orhanobut:logger:1.15'

    compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
    compile 'com.umeng.analytics:analytics:latest.integration'
    compile 'ai.api:libai:1.4.8'
    compile 'ai.api:sdk:2.0.5@aar'
// api.ai SDK dependencies
    compile 'com.google.code.gson:gson:2.8.0'
    compile 'commons-io:commons-io:2.4'
    compile 'com.android.support:multidex:1.0.1'
}

আমি যখন আমার বিল্ড.gradle ফাইলে এই কোডটি যুক্ত করি,

  packagingOptions {
            exclude 'META-INF/DEPENDENCIES'
            exclude 'META-INF/NOTICE'
            exclude 'META-INF/LICENSE'
            exclude 'META-INF/LICENSE.txt'
            exclude 'META-INF/NOTICE.txt'
        }

এই ত্রুটিটি সমাধান করা হবে, তবে আরও একটি সমস্যা ঘটবে। এটার মত:

java.lang.NoClassDefFoundError: com.squareup.leakcanary.internal.HeapAnalyzerService
at com.squareup.leakcanary.LeakCanary.isInAnalyzerProcess(LeakCanary.java:145)
at cn.sz.cyrus.wemz.TestApplication.onCreate(TestApplication.kt:32)

এর সমাধান কীভাবে করা যায় তার ধারণা কার?


অ্যান্ড্রয়েডের জন্য গুগল এপিআই ক্লায়েন্ট লাইব্রেরি অ্যাক্সেস করার সময় আমি একই সমস্যার মুখোমুখি হয়েছিলাম। গ্রেড নির্ভরতা থেকে মডিউল HttpClient বাদ দিয়ে সমস্যা সমাধান করুন। আরও বিশদের জন্য Google ডক্সকে দেখুন ডেভেলপার্স.কম / অ্যাপ্লিকেশন-
লিবারি

উত্তর:


493

আপনি এটি yourProject/app/build.gradleভিতরে প্রবেশ করতে পারেনandroid{}

android {      
      packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/ASL2.0'
        exclude("META-INF/*.kotlin_module") 
      }          
}

23
আপনি দয়া করে ব্যাখ্যা করতে পারেন কেন এটি কাজ করে এবং "মেটা-আইএনএফ" এর অর্থ কী? ধন্যবাদ!
খারবান্দা

@ কোডস্ল্যাভ এটি এপিকে কিছুটা সমস্যা সৃষ্টি করে যদি আমরা এই ফাইলগুলি google.github.io/android-gradle-dsl/current/… থেকে বাদ না দিয়ে থাকি তবে যে প্যাথগুলি বাদ দেয় না সেগুলি APK এ অন্তর্ভুক্ত করা হবে না। আমি সব জানি। এই সমস্যা সম্পর্কে আমার সম্পূর্ণ ধারণা নেই
শাবান ইব্রাহিম

11
যদিও এটি প্রশ্নের উত্তর দিতে পারে তবে এই উত্তরটি কীভাবে সমস্যা সমাধানে সহায়তা করতে পারে সে সম্পর্কে কিছু বিবরণ যুক্ত করা ভাল। আরও জানতে আমি কীভাবে একটি ভাল উত্তর লিখব দয়া করে পড়ুন ।
রওশন পিটিগালা

3
আমার ক্ষেত্রে আমারও 'মেটা-আইএনএফ / লিসেনএসইএমডি' এবং 'মেটা-আইএনএফ / লিসেনসি- নোটিস.এমডি'
ক্লায়নার

1
যোগ অগ্রাহ্য ( "মেটা-INF / * kotlin_module।") PackaginOptions তালিকায়
Jaspal

129

আমার ক্ষেত্রে এটি কেবল yourProject/app/build.gradleভিতরে 'মেটা-আইএনএফ / ডেপেন্ডেনসাইস' বাদ দিতে যথেষ্ট ছিল android{} । এটা এখানে

packagingOptions {
    exclude 'META-INF/DEPENDENCIES'
}

এবং তারপরে ক্লিন প্রকল্প এবং পুনর্নির্মাণ প্রকল্প করুন।


11
পরিবর্তে 'মেটা-আইএনএফ /
ডিপেন্ডেন্সস

7
ব্যাখ্যা দয়া করে
মোহাম্মদ আলী

1
@ সিলসুর সেই ফাইলটিকে বাদ দিন যা আপনি আমার কোডের মতো ভুল হিসাবে এই ফাইলটিকে "মেটা-আইএনএফ / প্রগুয়ার্ড / অ্যান্ড্রয়েডস-অ্যানোটেশনস.প্রো" এর জন্য রেখেছেন এবং তারপরে আমি 'মেটা-আইএনএফ / প্রগুয়ার্ড / অ্যান্ড্রয়েড-এনোটেশনগুলি বাদ দিয়েছি। প্রো 'এবং তার কাজ।
গুণবন্ত প্যাটেল

4
যদিও এটি প্রশ্নের উত্তর দিতে পারে তবে এই উত্তরটি কীভাবে সমস্যা সমাধানে সহায়তা করতে পারে সে সম্পর্কে কিছু বিবরণ যুক্ত করা ভাল। আরও জানতে আমি কীভাবে একটি ভাল উত্তর লিখব দয়া করে পড়ুন ।
রওশন পিটিগালা

আপনার কেবল গ্রেড ফাইলগুলি সিঙ্ক করার দরকার নেই
স্টিভ মোরটজ

75

এখানে সমাধানগুলি আমাকে সহায়তা করে নি, তবে এই লিঙ্কটি করেছে।

আপনার যদি এমন একটি লাইব্রেরি থাকে যা কিছু অ্যান্ড্রয়েড .so ফাইলগুলি যুক্ত করে থাকে - libassmidi.soবা libgnustl_shared.soআপনার যেমন প্যাকেজিংয়ের সময় কেবল একটি বাছাই করতে গ্রেডকে বলতে হয়, অন্যথায় আপনি বিরোধ পাবেন get

android {
  packagingOptions {
    pickFirst 'lib/armeabi-v7a/libassmidi.so'
    pickFirst 'lib/x86/libassmidi.so'
  }
}

একটি অ্যান্ড্রয়েড প্রকল্পে লাইব্রেরি হিসাবে একটি প্রতিক্রিয়া নেটিভ অ্যাপ্লিকেশন ব্যবহার করার সময় আমার এই সমস্যাটি ছিল। আশা করি এটা সাহায্য করবে


2
আপনাকে ধন্যবাদ, আমি কেবল একটি .এসও ফাইল নিয়ে একই সমস্যা ছিল। একই ফোল্ডারে gdbserver নামে আরও একটি ফাইল রয়েছে এবং লাইব্রেরির জন্য প্যাকেজিংঅপশন যোগ করার পরে এটি এখন কাজ করে।
মিঃ ফিশ

1
ধন্যবাদ! নেস্টেড নির্ভরতা হিসাবে যখন জেএনএ আড় ছিল তখন সহায়তা হয়েছিল
ফয়সাল 800813

31

অনুরূপ বার্তা ছিল

ত্রুটি: কার্য ': অ্যাপ্লিকেশন: ট্রান্সফর্ম রিসোর্স উইথমেজারজ জাভাআরেসফোর্ডডব্যাগ' এর জন্য কার্যকর করা ব্যর্থ। ওএস স্বতন্ত্র পাথ 'ধ্রুবক-মান html' এর সাথে একাধিক ফাইল পাওয়া গেছে

এটি সমাধানের জন্য, আমাকে অ্যান্ড্রয়েড স্টুডিওতে প্যাকেজ ভিউ ( 1 ) সক্ষম করতে হবে , তারপরে গাছের সাহায্যে লাইব্রেরিতে ব্রাউজ করতে হবে এবং সদৃশগুলি সনাক্ত করতে হবে ( 2 )

তারপরে, ctrl + Alt + f12 (বা আরএমবি মেনু) ( 3 ) - এবং এমন লাইব্রেরি সন্ধান করেছে যা সমস্যার কারণ হয়েছে। ফাইলগুলির তালিকা তৈরি করে সেই লিবিগুলির মধ্যে যা সমস্যাগুলির সৃষ্টি করে এবং এন্ড্রয়েড বিভাগের মধ্যে অ্যাপ্লিকেশন এর বিল্ড.gradle ফাইলটিতে লিখেছিল । অন্য বিকল্পটি হ'ল লাইব্রেরিটির সাথে ডুপ্লিকেট ফাইল যুক্ত ডিল করা

packagingOptions {
    exclude 'allclasses-frame.html'
    exclude 'allclasses-noframe.html'
    <..>

এখানে চিত্র বর্ণনা লিখুন


1
আপনি কীভাবে "গাছের মধ্য দিয়ে লাইব্রেরিতে ব্রাউজ করবেন এবং নকলগুলি আবিষ্কার করবেন"? আপনি কি সত্যিই সমস্ত ফোল্ডারের সমস্ত ফাইলের ওপরে গিয়েছেন?
অ্যান্ড্রয়েড বিকাশকারী

1
আমি "নকলগুলি সনাক্ত কর" সম্পর্কেও বিভ্রান্ত। অ্যাপ্লিকেশন / গ্রন্থাগারগুলিতে সম্ভবত 100 টি সাবেন্ট্রি রয়েছে ... একজন কীভাবে সদৃশগুলি সনাক্ত করতে যায়?
ফ্রিওয়াকার

28

মূলত গ্রেডাল যখন এপিপি ফাইল একসাথে রাখে তখন এটি সমস্ত সংকলন নির্ভরতা থেকে বিষয়বস্তু অনুলিপি করে, এটি দেখার জন্য যথেষ্ট বুদ্ধিমান যে দুটি আলাদা জার ফাইল থেকে একটি সদৃশ ফাইল রয়েছে .com.কমিং। এটি টেক্সট বা মেটা-ইনফ / ডেপেন্ডেন্সিসের মতো কোনও ফাইল হতে পারে। কেবলমাত্র তথ্যের জন্য ফাইল উপস্থিত থাকলে ক্ষেত্রে নীচে ব্যবহার করে এই ফাইলগুলি বাদ দেওয়া ভাল।

android{
    packagingOptions {
       exclude 'META-INF/DEPENDENCIES'
    }
}

বা যদি ক্ষেত্রে, ফাইলটি একটি শ্রেণিবদ্ধ ফাইলের মতো বাধ্যতামূলক ফাইল, যা একে অপরের সাথে সম্পর্কিত দুটি জারের নির্ভরতা জুড়ে নকল করা হয়েছে, আরও জড়িত সংস্করণের পথে এই জারের বিকল্পগুলি সন্ধান করা ভাল।


যখন আমি এটি আমার প্রকল্পে যুক্ত করি তখন আমি আবার একটি ত্রুটি পাই যা আমি আবার সমাধান করতে সক্ষম নই! অন্য কোন সমাধান?
হেটসগান্ধি

হেতভি গান্ধী, আপনি যে ত্রুটিটি দেখছেন তা কি?
অংক

20

আমারও একই সমস্যা ছিল এবং আমি এটি চেষ্টা করেছিলাম

ত্রুটি: ওএস স্বতন্ত্র পথের সাথে একাধিক ফাইল পাওয়া গেছে 'মেটা-আইএনএফ / প্রগুয়ার্ড / অ্যান্ড্রয়েডেক্স -অনোটেশনস.প্রো'

সমাধান: এটি ঠিক করতে আপনাকে যা করতে হবে তা হ'ল এটি আপনার অ্যাপ্লিকেশনটির 'বিল্ড.gradle' এর অ্যান্ড্রয়েড}} বিভাগে যুক্ত করা

packagingOptions {
    exclude 'META-INF/proguard/androidx-annotations.pro'
}

18

ব্যবহার করার সময় এটি ঘটে

org.jetbrains.kotlinx: kotlinx-coroutines কোর: 1.2.0

এবং পরবর্তী সংস্করণে স্থির করা হয়েছে

org.jetbrains.kotlinx: kotlinx-coroutines কোর: 1.2.1


1
org.jetbrains.kotlinx: কোটলিঙ্কস-করোটাইনস-কোর: 1.3.6 এর সাথে একই রকম সমস্যা যা এখনকার সবচেয়ে দীর্ঘতম। ডাউনগ্রেড করতে হয়েছিল
ফারহান প্যাটেলকে

হ্যাঁ, একই সমস্যাটি 1.3.6 এ
শেফচেনকো

17

আমি একই ত্রুটির মুখোমুখি হয়েছি এবং আমি দেখতে পেয়েছি যে এটির বিভিন্ন মডিউলগুলির ফলে বিভিন্ন প্যাকেজ থেকে একই ক্লাস রয়েছে

উদাহরণস্বরূপ, একটিতে অ্যান্ড্রয়েড প্যাকেজ ব্যবহৃত হয় এবং অন্যটি প্রি-অ্যান্ড্রয়েডেক্স ব্যবহার করে

অ্যান্ড্রয়েড স্টুডিওর অন্তর্নির্মিত বৈশিষ্ট্যটি ব্যবহার করে প্রাক-অ্যান্ড্রয়েডেক্স মডিউলটি অ্যান্ড্রয়েডএক্সে স্থানান্তরিত করে আমি এটি সমাধান করেছি: "রিফ্যাক্টর -> অ্যান্ড্রয়েডেক্সে মাইগ্রেট করুন ..." কিছুই বাদ না দিয়ে।


আপনার পরিস্থিতির জন্য, আপনি মডিউলগুলির মধ্যে কোনও নির্ভরতা মেলে না তা পরীক্ষা করতে পারেন।


1
আপনার প্রকল্পের বর্তমান সংস্করণটির ব্যাকআপ তৈরি করতে ভুলবেন না যেহেতু অ্যান্ড্রয়েডএক্সে স্থানান্তর করা আপনার প্রকল্পটি ভেঙে দিতে পারে!
কাঠির

12

এই বার্তাটি পাওয়ার সাথে সম্পর্কিত সমস্ত উত্তর আমি এতে পড়েছি Android Studio:

ওএস স্বতন্ত্র পথ 'মেটা-আইএনএফ / লিসেনসি' এর সাথে একাধিক ফাইল পাওয়া গেছে

তবে এক্ষেত্রে ক্লাস বাদ দেওয়া কোনও প্রয়োজনীয় নয়, আমাদের কেবল বাদ দিতে হবে 'META-INF/DEPENDENCIES', এটি এর ভিতরে করা যেতে পারে /app/build.gradle:

android{
    ...
    ...
    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
    }

}

এটি একইভাবে এসও
অতুল ul

11

আমি জাভা 7 থেকে জাভা 8 তে স্টুডিও আপডেট করেছি এবং এই সমস্যাটি দেখা দিয়েছে। তারপরে আমি এটিকে সমাধান করেছি:

android {
    defaultConfig {
    }
    buildTypes {
    }
    packagingOptions{
        exclude 'META-INF/rxjava.properties'
    }
}

8

আমি আমার অ্যাপ্লিকেশন, আমি এই জাতীয় জার নির্ভরতা যুক্ত ছিল:

implementation files('libs/json-simple-1.1.1.jar')

তবে আমি বুঝতে পেরেছি যে নির্ভরতাগুলিতে নিম্নলিখিত প্রথম লাইনের কারণে সেগুলি ইতিমধ্যে যুক্ত করা হয়েছিল:

implementation fileTree(include: ['*.jar'], dir: 'libs')

এই লাইনটি অ্যাপ নির্ভরতাতে lib ফোল্ডারে সমস্ত জার যুক্ত করে।

অতএব অতিরিক্ত নির্ভরতা অপসারণের পরে implementation files('libs/json-simple-1.1.1.jar')

এটা ঠিক কাজ করছে।


এটি সহায়ক তবে উত্তরের সাথে সম্পর্কিত নয়। লাইব্রেরিতে, আপনি ফাইলগুলি মেটা-ফোল্ডারগুলি মেটা-আইএনএফ খুঁজে পাবেন যা নাম এবং ফর্ম্যাটে একই হতে পারে। এই কারণগুলির সদৃশ ফাইল ইস্যু তাই অপসারণ করতে হবে।
অভিনব স্যাক্সেনা

7

আমি একাধিক মডিউল অ্যাপ পরিবেশে কাজ করার অনুরূপ সমস্যার মুখোমুখি হয়েছি:

ত্রুটি: কার্য ': অ্যাপ্লিকেশন: ট্রান্সফর্ম রিসোর্স উইথমেজারজ জাভাআরেসফোর্ডডব্যাগ' এর জন্য কার্যকর করা ব্যর্থ। ওএস স্বাধীন পাথ 'মেটা-আইএনএফ / AL2.0' এর সাথে একাধিক ফাইল পাওয়া গেছে

এই সমস্যাটি আমার এই মডিউলগুলির বেশ কয়েকটি দ্বারা প্রতিবেদন করা হয়েছিল এবং উপরের সমাধানগুলির কোনওটিই এটি ঠিক করে নি। দেখা যাচ্ছে, আমি সংস্করণ Coroutines 1.3.6 ব্যবহার করছিলাম যা মনে হচ্ছে মেটা-আইএনএফ / AL2.0 এম্বেড করছে যা ইতিমধ্যে আমি ব্যবহার করছি এমন আরও একটি লাইব্রেরি এম্বেড করা ছিল। এটি ঠিক করার জন্য, আমি মডিউলের বিল্ডড্র্যাডলে নিম্নলিখিত কোড স্নিপেট যুক্ত করেছি যা ব্যর্থ হয়েছিল:

configurations.all {
    resolutionStrategy {
        exclude group: "org.jetbrains.kotlinx", module: "kotlinx-coroutines-debug"

    }
}

এটি একাধিক মডিউলগুলিতে ঘটেছিল তা প্রদত্ত, আমি সেই resolutionStrategyকোডটি আমার প্রকল্প স্তরের বিল্ড.gradle এ স্থানান্তরিত করেছি। তার পরে সবকিছু কাজ করে।


4

আমার একই সমস্যা হচ্ছে এবং আমি এটি চেষ্টা করেছিলাম

ত্রুটি: ওএস স্বতন্ত্র পথের সাথে একাধিক ফাইল পাওয়া গেছে 'মেটা-আইএনএফ / লাইব্রেরি_রেইল.কোটলিন_মডিউল'

সমাধান:

android {
    packagingOptions {
    exclude 'META-INF/library_release.kotlin_module'
    }
}

3

আমারও একই সমস্যা ছিল। আমি ত্রুটি বার্তা পেয়েছিলাম -

Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.

More than one file was found with OS independent path 'javax/annotation/WillCloseWhenClosed.java'

উপরের উত্তরগুলিতে যেমন বলা হয়েছে, নীচের কোডটি ব্যবহার করে কাজ করে

'packagingOptions {
       exclude 'allclasses-frame.html'
    }'

তবে আমি 20 টি ভিন্ন ফাইলের জন্য এই ত্রুটিটি পাচ্ছিলাম, সুতরাং 20 টি ফাইল বাদ দেওয়ার পরে, আমি থামিয়ে দিয়ে একটি শালীন সমাধান অনুসন্ধান করার চেষ্টা করেছি। আমিও এর মুখোমুখি হয়েছি

'Unable to execute dex: Multiple dex files' error.

আমি অবশেষে এটি সমাধান করতে পরিচালিত।

প্রথমত (আমার ক্ষেত্রে উইলক্লোজওহেন ক্লোজড.জভাটি সদৃশ ফাইল ছিল), অ্যান্ড্রয়েড স্টুডিওতে আপনার কাছে 'সর্বত্র অনুসন্ধানের' বিকল্প রয়েছে। সেখানে লিখুন এবং অনুসন্ধান করুন। সেখানে আমি এই ফাইলটির একাধিক উদাহরণ পেয়েছি। সুতরাং আমি উভয় দৃষ্টান্তে ক্লিক করেছি এবং তাদের অ্যান্ড্রয়েড স্টুডিওতে খোলার সময় ফাইলটিতে ডান ক্লিক করে এবং তার অবস্থান দেখে তাদের অবস্থান দেখেছি।

দ্বিতীয়ত, আমি বুঝতে পেরেছিলাম যে গ্রেড ফাইলটিতে আমার কিছু নির্ভরতা ছিল। আমি নীচের কোডটি ব্যবহার করছিলাম

dependencies {
    compile 'com.google.api-client:google-api-client:1.23.0'
}

এবং লোকেশনটিতেও আমার একই পিন প্যাকেজ ছিল: \ ব্যবহারকারী \ ব্যবহারকারী \ অ্যান্ড্রয়েড স্টুডিওপ্রজেক্টস \ গিট \ অ্যাপনাম \ অ্যাপ \ লিবস \ গুগল-এইচপি-ক্লায়েন্ট-১.২৩ !.

সুতরাং এটি অপ্রয়োজনীয় ছিল এবং গ্রেড কেন 2 টি ফাইল সন্ধান করছে তা ঠিক। সুতরাং আমি আমার জিপ প্যাকেজগুলি মুছে ফেলেছি এবং এটি আমার জন্য ত্রুটিগুলি সমাধান করেছে। এটি করার সময় যত্নশীল হন। মুছে ফেলার জন্য সঠিক ফাইল বা প্যাকেজটি কোনটি আপনাকে খুঁজে বের করতে হবে।

তৃতীয়ত, গ্রেডল এই স্থানে এই বাগ ফাইলগুলির একটি জিপ তৈরি করে (কমপক্ষে এটি আমার জন্য তৈরি করা হয়েছিল) - সি: \ প্রোগ্রাম ফাইলগুলি অ্যান্ড্রয়েড \ অ্যান্ড্রয়েড স্টুডিও \ গ্রেডল \ এম 2 রিপোসিটরি \ কম \ গুগল \ কোড \ ফাইন্ডব্যাগস s জেএসআর 305 \ 1.3। 9 \ jsr305-1.3.9.jar!

সুতরাং আমি গিয়ে এখানে থেকে jsr305-1.3.9.jar ফাইলটি মুছে ফেলেছি।

আপনি যদি এখনও বিভ্রান্ত থাকেন তবে অ্যান্ড্রয়েড স্টুডিওতে কেবল 'সর্বত্র অনুসন্ধান' করুন, সেখানে আপনার ফাইলের উদাহরণ খুঁজে নিন এবং আপনাকে সেগুলির একটি মুছতে হবে। আপনার সময় নিন এবং কোনটি খুঁজে বের করুন।


3

যোগ করার পদ্ধতি

android.useAndroidX সত্য =

android.enableJetifier সত্য =

থেকে gradle.properties আমার জন্য কাজ করেন।


1

আমি প্রথমে কয়েকটি নেটিভ লাইব্রেরি (.so ফাইল) এবং পরে জাভা / কোটলিন ফাইল সহ এই সমস্যার মুখোমুখি হয়েছি। দেখা গেল আমি উত্স থেকে একটি গ্রন্থাগার পাশাপাশি একটি ট্রানজিটিভ নির্ভরতার মাধ্যমে শিল্পকর্মের রেফারেন্স সহ অন্তর্ভুক্ত ছিল। কোনও অনর্থক এন্ট্রি রয়েছে কিনা তা দেখতে আপনার নির্ভরতা গাছটি পরীক্ষা করুন। ./gradlew :app:dependenciesনির্ভরতা গাছ পেতে ব্যবহার করুন । মূল মডিউলটির নামটি আলাদা হলে আপনার অ্যাপ্লিকেশনটির নামের সাথে "অ্যাপ" প্রতিস্থাপন করুন।


1

আপনার বিল্ড.gradle অ্যান্ড্রয়েড minimum in এ সর্বনিম্ন অ্যান্ড্রয়েড সংস্করণ> = 21 পরিবর্তন করে দেখুন


1

অ্যান্ড্রয়েডের ভিতরে অ্যাপ্লিকেশন স্তরের গ্রেডেল ফাইলটিতে নিম্নলিখিতগুলি যুক্ত করুন {}

packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/ASL2.0'
        exclude("META-INF/*.kotlin_module") 
      } 

0

ডিফল্ট কনফিগারেশন থেকে মাল্টেডেক্স মুছে ফেলার চেষ্টা করুন এবং বিল্ড ত্রুটি লগটি পরীক্ষা করুন। যদি লগটি ইনোটিফিকেশন ক্লাসের সাথে কিছু সম্পর্কিত হয়। এটিকে অ্যান্ড্রয়েডে ব্যবহার করুন {}

configurations {
    all*.exclude group: 'com.android.support', module: 'support-v4'
}

এটি আমাকে সাহায্য করে।


0

সমাধানের নীচে আমার পক্ষে আপনিও সহায়তা পেতে পারেন, আমি অ্যাপ্লিকেশন গ্রেড ফাইলটিতে লাইনের নিচে লিখেছি

  packagingOptions {
        exclude 'META-INF/proguard/androidx-annotations.pro'
    }

0

আমি তারে ছিলাম, তবে আমার প্রকল্পটি ইতিমধ্যে অ্যান্ড্রয়েডএক্সে স্থানান্তরিত হয়েছিল, তবে আবার অ্যান্ড্রয়েডএক্সে স্থানান্তরিত হওয়ার পরে, এটি আমার প্রকল্পের কিছু অংশ পুনরুদ্ধার করেছে এবং সমস্যার সমাধান হয়েছে।


0

অ্যাপ্লিকেশনগুলিতে নীচের কোড যুক্ত করুন এটি সমস্ত লাইব্রেরি নির্ভরতা ত্রুটিগুলি সমাধান করবে

   packagingOptions {
    exclude 'META-INF/DEPENDENCIES'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/license.txt'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/NOTICE.txt'
    exclude 'META-INF/notice.txt'
    exclude 'META-INF/ASL2.0'
    exclude("META-INF/*.kotlin_module")
    exclude 'META-INF/library_release.kotlin_module'
    pickFirst 'lib/armeabi-v7a/libavdevice.so'
    pickFirst 'lib/armeabi/libavdevice.so'
    pickFirst 'lib/armeabi/libswresample.so'
    pickFirst 'lib/armeabi-v7a/libswresample.so'
    pickFirst 'lib/armeabi/libswscale.so'
    pickFirst 'lib/armeabi/libavcodec.so'
    pickFirst 'lib/armeabi-v7a/libavutil.so'
    pickFirst 'lib/armeabi/libavutil.so'
    pickFirst 'lib/armeabi-v7a/libavformat.so'
    pickFirst 'lib/armeabi/libavfilter.so'
    pickFirst 'lib/armeabi/libavformat.so'
    pickFirst 'lib/armeabi-v7a/libavcodec.so'
    pickFirst 'lib/armeabi-v7a/libswscale.so'
    pickFirst 'lib/armeabi/libpostproc.so'
    pickFirst 'lib/armeabi-v7a/libpostproc.so'
    pickFirst 'lib/armeabi-v7a/libavfilter.so'
}


-1

এই সমস্যার উপর এসও-তে থাকা অনেক জবাবগুলিতে এটি যুক্ত করার পরামর্শ দেওয়া হয়েছে exclude 'META-INF/DEPENDENCIES'এবং কিছু অন্যান্য বাদ দেওয়া হয়েছে। তবে এগুলির কোনওটিই আমার পক্ষে কাজ করেনি। আমার ক্ষেত্রে পরিস্থিতিটি এরকম ছিল:

আমি এটি নির্ভরতাগুলিতে যুক্ত করেছি:

implementation 'androidx.annotation:annotation:1.1.0'

এবং আমি গ্রেড.প্রোপার্টিগুলিতে এটি যুক্ত করেছিলাম:

android.useAndroidX=true

এই দু'টিই আমি যুক্ত করেছিলাম, কারণ আমি বিল্ড ত্রুটি পাচ্ছিলাম 'প্রতীক শ্রেণি নুলাবলীর সন্ধান করতে পারে না' এবং এগুলির সমাধান হিসাবে এখানে কিছু উত্তর হিসাবে দেওয়া হয়েছিল)

যাইহোক, অবশেষে আমি ত্রুটি পেয়ে উঠলাম:

 More than one file was found with OS independent path 'androidsupportmultidexversion.txt'

না excludeআমার জন্য কাজ করে। অবশেষে আমি উপরের added যুক্ত লাইনগুলি কেবল সন্দেহের বাইরে ফেলেছি (সমাধান করা 'কোনও বিকল্প উপায়ে প্রতীক শ্রেণি নুল' খুঁজে পাচ্ছে না) এবং অবশেষে আমি এই "ওএস ... এর সাথে একাধিক ফাইল খুঁজে পেয়েছি ..." বিল্ড ত্রুটি থেকে মুক্তি পেয়েছি। আমি আমার ঘন্টা নষ্ট। তবে অবশেষে তা থেকে মুক্তি পেয়েছি।


-1

এই পরিষ্কার প্রকল্পের পরে আপনার কেবল ক্যাশে ও পুনরায় চালু করতে হবে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.