IT박스

오류 : (23, 17) 해결 실패 : junit : junit : 4.12

itboxs 2020. 7. 4. 11:20
반응형

오류 : (23, 17) 해결 실패 : junit : junit : 4.12


Android Studio에서 새 프로젝트를 만들 때마다 항상 다음과 같은 결과가 나타나는 이유는 무엇입니까?

오류 : (23, 17) 해결하지 못했습니다 : junit : junit : 4.12?

testCompile 'junit:junit:4.12'종속성을 제거해도 더 이상 문제가되지 않습니다.

build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "com.okedroid.myapplication"
        minSdkVersion 17
        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.0.1'
}

나는 같은 문제가 있었다. build.gradle파일 에 누락 된 저장소에 대한 URL을 추가하여 해결했습니다 .

android {
    [...]
    repositories {
        maven { url 'http://repo1.maven.org/maven2' }
    }
    [...]
}

그게 다야.


build.gradle 파일에서 "testCompile 'junit : junit : 4.12'"를 제거하십시오.

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'//remove this line and sync again... worked for me

androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'}) //if available, also delete these two lines

compile 'com.android.support:appcompat-v7:23.0.1'
 }

나를 위해 일했고 나는 행복하다! :)

이 질문에 대한 실제 답변은 아닙니다. 위의 줄을 제거 할 때 작동하기 때문에 이것을 언급했습니다.


파일-> 프로젝트 구조로 이동하십시오. 다음과 같은 창이 열립니다 :

여기에 이미지 설명을 입력하십시오

거기에서:

  1. junit 라이브러리를 제거하십시오 (junit을 선택하고 아래 "-"버튼을 누름).
  2. 다시 추가하십시오 (아래의 "+"단추를 선택하고 "라이브러리 부서"를 선택한 후 "junit"를 검색하고 확인을 누르십시오). 확인을 눌러 변경 사항을 적용하십시오. 약 30 초 후에 gradle 동기화가 제대로 작동합니다.

그것이 당신에게도 효과가 있기를 바랍니다 : D


junit 라이브러리를 얻을 수 없습니다.

repositories {
        maven { url 'http://repo1.maven.org/maven2' }
    }

build.gradle 파일의 android 블록 안에 위의 줄을 추가하면 문제가 해결되었습니다. 안드로이드 스튜디오에 junit 라이브러리가 없기 때문일 수 있습니다.


build.gradle 파일에 리포지토리 추가

repositories {
    maven { url 'http://repo1.maven.org/maven2' }
}

아마도 gradle이 불완전 할 것입니다. 다음을 추가하는 것이 좋습니다.

android{
    repositories {
    maven { url 'http://repo1.maven.org/maven2' }
}

그러나 경우에 따라 작동하지 않으면 gradle의 종속성에서 완전히 삭제할 수 있습니다.

사용자 폴더에있는 gradle 폴더 삭제 조건으로 android studio를 다시 설치하면 괜찮을 것이라고 생각합니다. .gradle


다음은 동일한 문제를 해결하기 위해 수행 한 작업입니다. 나는 당신이 생각하는 방화벽과 같은 문제입니다. 그래서 제거하려고했습니다

testCompile 'junit:junit:4.12' line 

그러나 그것은 나를 위해 작동하지 않았습니다. 아래 코드 줄을 추가하려고했습니다.

repositories {
    maven { url 'http://repo1.maven.org/maven2' }
}

그조차도 저에게는 효과가 없었습니다.

모듈 설정의 라이브러리 종속성에서 Junit4.12를 제거 (-) 및 읽기 (+)하려고했습니다. 여전히 그것은 나를 위해 작동하지 않았습니다.

동기화 및 재 구축 프로젝트를 여러 번 시도했습니다. 여전히 나를 위해 일하지 않았다.

마지막으로 mvnrepository 웹 사이트에서 Junit4.12.jar 파일을 수동으로 다운로드했습니다. 이 jar 파일을 libs 폴더 내의 Project 폴더 아래 Androids Workspace에 넣습니다. 그런 다음 모듈 설정> 종속성 탭> (+)> 파일 종속성> Sleect 경로 창에서 'libs'폴더를 펼치면 거기에 복사 한 Jar 파일이 나타납니다. 파일을 선택하고 '확인'을 클릭하십시오. 이제 종속성 목록에서 이전 버전의 junit4.12를 제거하십시오.

"libs\junit-4.12.jar"종속성 목록에 하나의 항목이 있어야 합니다. 이제 '확인'을 클릭하십시오.

이제 Gradle이 프로젝트를 다시 빌드 할 것입니다.

도움이 되었기를 바랍니다!


나는 Everithing을 시도 할 것이지만 문제를 해결하는 데 도움이되는 유일한 것은 줄을 삭제하는 것입니다.

testCompile 'junit:junit:4.12'

앱 gradel에서.


HTTPS가 프록시에 의해 차단 되었기 때문에 발생합니다. HTTPS를 사용하는 기본 jcenter에서 HTTP로 변경하십시오.

전에

repositories {
     jcenter()
}

repositories {
    jcenter {
        //Default one is HTTPS
        url "http://jcenter.bintray.com/"
    }
}

모든 프로젝트에 대해 위 단계를 반복하십시오.

allprojects {
  repositories {
    jcenter {
        url "http://jcenter.bintray.com/"
    }
  }
}

새 프로젝트를 만든 후이 오류가 발생했습니다. build.gradle 파일에서 나는 이것을 가지고 있었다 :

jcenter()

나는 그것을 다음과 같이 바꾸었고 오류는 사라졌다.

jcenter {
    url "http://jcenter.bintray.com/"
}

방화벽 뒤에 있고 URL을 지정하여 https에서 http로 변경하기 때문입니다.


아마도 당신은 프록시 뒤에 있습니다. 나에게 일어난, 모바일 테 더링 (프록시 없음) 재 구축 프로젝트를 사용하여 오류가 사라졌습니다. 프록시로 원래 연결로 돌아가고 오류없이 다시 빌드합니다.


프록시를 사용하고 있습니까? 그렇다면 파일의 https대한 네트워크 구성이 누락 된 문제 일 수 있습니다 gradle.properties.

AndroidStudio는 기본 프록시 설정을 gradle.properties프로젝트의 파일에 자동으로 저장하지만 http의 경우에만 https를 잊어 버립니다.

따라서 기본적으로 gradle.properties파일에는 http 및 https 구성이 모두 포함되어야합니다.

systemProp.http.proxyPassword=xxx
systemProp.http.proxyHost=xxx
systemProp.http.nonProxyHosts=xxx
systemProp.http.proxyUser=xxx
systemProp.http.proxyPort=xxx

systemProp.https.proxyPassword=xxx
systemProp.https.proxyHost=xxx
systemProp.https.nonProxyHosts=xxx
systemProp.https.proxyUser=xxx
systemProp.https.proxyPort=xxx

대부분이 문제는 프로젝트를 만들 때 Gradle 빌드가 실패 할 때 SDK를 업데이트 할 때 발생합니다. mavenjcenter 리포지토리를 build.gradle (Module : app)에 추가하면 문제가 해결됩니다.

repositories {
    maven { url 'http://repo1.maven.org/maven2' }
    jcenter { url "http://jcenter.bintray.com/" }
}

다음에 추가해야하는 두 줄입니다.

apply plugin: 'com.android.application' 

이 두 줄을 추가 한 후 코드 모양은 다음과 같습니다

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.okedroid.myapplication"
        minSdkVersion 17
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

jar 파일이 누락되어 오류가 발생합니다. 간단한 해결책은 해결되지 않은 모든 파일을 C : \ Program Files \ Android \ Android Studio \ gradle \ m2repository ...에 복사하는 것입니다 (파일 경로가 다를 수 있음). 나는 해결할 수없는 약 6 개의 의존성을 얻었고, junit은 그들 중 하나이고 다른 것은 com과 org 및 javax입니다. 방화벽 뒤에 있기 때문에 저장소의 코드를 추가해도 Android Studio는 액세스하지 않는 것 같습니다. 나는 maven 저장소로 가서 해결할 수없는 모든 파일을 다운로드했습니다. 문제가 해결되었으며 Gradle이 오류없이 동기화됩니다. 그러나 나는 단지 1 일의 경험을 가진 인증 된 초보자이므로 이것이 올바른 방법인지는 아닙니다.

오류 예 : com : squareup : javawriter : 2.1.1을 해결할 수 없습니다

1 단계 : C : \ Program Files \ Android \ Android Studio \ gradle \ m2repository \ com \ squareup \ javawriter \ 2.1.1 \ 경로를 생성했습니다.

2 단계 : maven 저장소에서 모든 jar 파일을 다운로드했습니다 : http://repo1.maven.org/maven2/com/squareup/javawriter/2.1.1/

3 단계 :이 디렉토리에서 모든 .jar 파일을 수동으로 다운로드했습니다.

4 단계 : C : \ Program Files \ Android \ Android Studio \ gradle \ m2repository \ com \ squareup \ javawriter \ 2.1.1 \에 복사했습니다.

junit을 포함하여 해결되지 않은 모든 파일에 이것을 반복했습니다.

junit의 경우 C : \ Program Files \ Android \ Android Studio \ gradle \ m2repository \ junit \ junit \ 4.12 디렉토리에 junit-4.12.jar를 복사하면 junit 오류가 사라집니다.


  1. 프록시 뒤에 있지 않아야합니다!
  2. 프록시에서 작동하도록 Android Strudio를 구성한 경우 Android Studio 환경 설정에서 해당 옵션을 비활성화해야합니다
  3. Android Studio의 Android보기에서 gradle.properties로 이동하여 모든 프록시 구성을 삭제하십시오.
  4. 이제 gradle을 동기화하십시오
  5. 코딩을 즐기십시오!

이와 같이 build.gradle을 변경하면 나에게 잘 작동합니다.

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "22.0.1"
    repositories {
        maven { url 'http://repo1.maven.org/maven2' }
    }
    defaultConfig {
        applicationId "YOUR PACKAGE NAME"
        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.0.0'
}

추가

    repositories {
        maven { url 'http://repo1.maven.org/maven2' }
    }

android


파일-> 프로젝트 구조-> 종속성으로 이동하십시오.-> junit : unit : 4.12

오른쪽의 .. 드롭 다운에서 컴파일을 선택합니다. 간단합니다.

참조 이미지 : http://i.stack.imgur.com/5WvS3.png

레즈 VV


Android Studio 설치가 완전히 오프라인 상태입니다. 이러한 종류의 문제를 해결하기 위해 프로세스 모니터를 사용했습니다. "Android Studio \ gradle \ m2repository"에 몇 개의 파일이없는 것으로 나타났습니다. 에서 모든 파일을 다운로드했습니다

  1. http://repo1.maven.org/maven2/junit/junit/4.12/
  2. http://repo1.maven.org/maven2/org/hamcrest/hamcrest-core/
  3. repo1.maven.org/maven2/org/hamcrest/hamcrest-parent/1.3/ (두 링크 만 게시 할 수 있습니다 ... ;-))

이 파일을 "Android Studio \ gradle \ m2repository"에 복사했습니다. "maven2"아래에있는 "m2repository"아래에 구조를 작성해야합니다. 누락 된 파일이 더있을 수 있지만 현재 Gradle 빌드는 오류없이 완료됩니다.


나는 같은 문제가 있었다.

  • 1 옵션 : junit 4.12.jar를 다운로드하여 lib 폴더에 복사하고 android studio를 다시 시작하십시오. 새로운 프로젝트를 만들 필요가없는 이점

  • 2 옵션 : 인터넷에 연결된 새 프로젝트를 작성하고 새로 작성된 프로젝트에서 모든 Java 및 XML 코드를 복사하십시오. 이 문제는 영구적으로 해결됩니다.


라인을 제거 testCompile 'junit:junit:4.12'

dependencies {
  compile fileTree(dir: 'libs', include: ['*.jar'])
  compile 'com.android.support:appcompat-v7:23.0.1'
 }

그 후 프로젝트를 다시 동기화하십시오.


dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
       compile 'com.android.support:appcompat-v7:23.1.1'
}

참고 : testCompile 제거 'junit : junit : 4.12'라인이 내 문제를 해결했습니다.


이 시도:

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    //testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.3.0'
    compile 'com.android.support:design:23.3.0'
    compile 'com.google.code.gson:gson:2.2.4'
}

당신이 프록시 뒤에 있다면. Android Studio는 http에 대한 프록시를 Gradle에 추가하지만 https에는 프록시를 추가하지 않습니다. gradle.properties에 https에 대한 프록시 설정 추가


이 문제가 발생하면 다음을 변경하여 완전히 해결할 수 있습니다.

build.gradle (프로젝트 : ...)

이것을 교체

    buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.0.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        mavenCentral()

    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

나는 같은 문제가 있었지만 다른 문제가 있었다.

내 다른 문제는 Gradle 빌드가 너무 느리다는 것입니다!

thisL을 수행하여 문제를 해결했습니다.

mdew를 좋아한다면 프로젝트를 만들 때 마다이 작업을 수행해야합니다.

기본 옵션을 maven으로 설정하려면

이 작업을 수행:

폴더로 이동하십시오.

C:\Program Files\Android\Android Studio\plugins\android\lib\templates\gradle-projects\NewAndroidProject\root

그런 다음 build.gradle.ftlnotepad ++ 또는 notepad로 파일을 열고 모두 jcenter()바꿉니다 mavenCentral().

편집 : 왜 추락 투표? 당신은 그것을 좋아하지 않습니까?


Android Studio가 gradle과 동기화되지 않은 이유를 해결할 수 없었습니다. VPN이 마음에 들지 않기 때문에 조심하십시오!


"속성"탭에서 "파일"-> "프로젝트 구조"-> "앱"으로 이동하십시오. "Library Repository" 필드 에 ' http://repo1.maven.org/maven2 '를 입력 한 다음 Ok를 누릅니다. 그것은 나를 위해 그렇게 고정되었습니다. 이제 프로젝트가 컴파일 중입니다.


인터넷에 연결하고 Android Studio를 시작하고 프로젝트를 엽니 다. Gradle Sync 동안 인터넷 (모든 JAR 파일)에서 종속성을 다운로드합니다. 이것은 나를 위해 해결했습니다. Gradle 파일에서 편집 할 필요가 없습니다. 모두 Android Studio에서 자동으로 수행되었습니다. Android Studio 2.2 사용 :)

또한 Java JDK 1.x (7 또는 8 모두 제대로 작동)를 설치하는 것을 잊지 마십시오.


내 상황에 적합한 솔루션을 제안하고 싶습니다.

  • 처음에는 추가해야합니다

    repositories {
        maven { url 'http://repo1.maven.org/maven2' }
    }
    

    buildscript {}블록 내부의 프로젝트 레벨 build.gradle 파일로

  • 그런 다음 추가

    allprojects {
        repositories {
            maven { url 'http://repo1.maven.org/maven2' }
        }
    

    프로젝트 레벨 build.gradle 파일로

  • 다음 요점은 추가

    repositories {
        jcenter()
        mavenCentral()
    }
    

    내부 모듈 레벨 빌드-그라 데로 buildTypes{ }


많은 답변을 살펴 보아도 아무 효과가 없습니다. 다행히도 쉬운 해결책을 찾았습니다. junit4.12에 댓글을 달거나 삭제할 필요가 없습니다. 문제는 여기 있습니다 :

- androidTestCompile files('libs/junit-4.12.jar')

이 부분은 프로젝트의 라이브러리에서 파일을 찾는 경로를 보여줍니다. 이유는 모르지만 어떤 이유로 든 기본적으로 비어 있습니다. 내 경우 경로는 다음과 같습니다.

C:\Users\arzakhar\AndroidStudioProjects\MyApp\app\libs

코드에서이 줄을 삭제할 수 build.grandle(Module.app)있지만 나중에 필요할 수 있습니다. 해결책은 다음과 같습니다.

1-junit-4.12.jar를 다운로드하거나 Android Studio 폴더에서 복사하십시오. 보통 있어야합니다. 제 경우에는 다음과 같습니다.

C:\Program Files\Android\Android Studio\lib

위에서 언급 한 디렉토리 (프로젝트)

2-삭제 및 추가

여기에 junit-4.12.jar에 루트를 다시 입력해야합니다

3-재건

4-열심히 일하십시오

참고 URL : https://stackoverflow.com/questions/32519219/error23-17-failed-to-resolve-junitjunit4-12

반응형