راه حل خطای بارگزاری مخزن junit در Android Studio
راه حل خطای بارگزاری مخزن junit در اندروید استودیو
اگر از توسعه دهندگان اندروید باشید و از محیط توسعه نرم افزار آن یعنی Android Studio استفاده کنید ممکن است به خطای بارگزاری مخزن junit در هنگام کامپایل پروژه برخورده باشید. متن خطا می تواند بصورت زیر باشد:
Error:(23, 17)"Failed to resolve: junit:junit:4.12".
توضیحات اولیه
junit یک فریمورک تست نرم افزار مبتنی بر جاوا است و باید کتابخانه آن در پروژه بارگزاری شود. Gradle هم یک ابزار ساخت (build tool) مجتمع شده با اندروید استودیو است که نیازمندی های پروژه (dependencies) شما را مخازن Maven دانلود می کند. Maven یکی دیگر از ابزارهای ساخت معروف است که مخازن نرم افزاری متعددی را در قالب یک اکوسیستم ریموت در اختیار توسعه دهندگان قرار می دهد.
منظور از نیازمندی های پروژه یعنی فایل های jar کتابخانه هایی که در پروژه از آنها استفاده کرده اید. یکی از پر استفاده ترین مخزن ها در پروژه های جاوا مخرن jcenter است.
باید توجه داشته باشید که بین مخازن buildscript و مخازن نیازمندی ها تفاوت وجود دارد. Gradle از مخازن buildscript برای ساخت پروژه بهره می برد.
راه حل اول:
1) به پوشه کتابخانه های اندروید استودیو به آدرس زیر رفته و فایل junit-4.12.jar را پیدا کنید.
Android Studio\lib
2) فایل junit-4.12.jar را به پوشه کتابخانه های پروژه خود با آدرس زیر کپی کنید.
yourproject\app\libs
3) اندروید استودیو را باز کرده و در فایل build.gradle خط زیر را پاک کرده یا کامنت کنید.
testCompile 'junit:junit:4.12'
4) در پنجره Project (نمایش درختی فایل ها و پوشه های پروژه) پوشه Libs را باز کرده و بر روی فایل junit-4.12.jar راست کلیک کنید و گزینه add as a library را انتخاب کنید.
5) پروژه را مجدداً بسازید (Build کنید).
راه حل دوم
باید تکه کد زیر را در فایل build.gradle قرار دهید.
android { ..... repositories { maven { url 'http://repo1.maven.org/maven2' } jcenter { url "http://jcenter.bintray.com/" } } ..... }
به عنوان مثال کد زیر بدرستی اجرا خواهد شد:
apply plugin: 'com.android.application' repositories { maven { url 'http://repo1.maven.org/maven2' } jcenter { url "http://jcenter.bintray.com/" } } android { compileSdkVersion 23 buildToolsVersion "23.0.1" defaultConfig { applicationId "com.example.application" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.1.1' compile 'com.android.support:design:23.1.1' }
موفق باشید.
خیلی ممنون با روش اول مشکل حل شد تشکر
بسیار عالی بود و مشکلم را برطرف کرد.
ممنون