Android 오류 빌드 서명 된 APK : 'externalOverride'구성 서명에 대한 keystore.jks를 찾을 수 없음


85

서명 된 APK를 빌드하려고 할 때이 오류가 발생합니다. 최근에 API 23으로 업그레이드했지만 그 후 성공적으로 APK를 생성했습니다. 혼란스러워. 도움을 요청하고이 문제를 해결하는 방법을 조언합니다. 여기에 오류가 있습니다.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:validateExternalOverrideSigning'.
> Keystore file /Users/me/Desktop/final apps/keystore.jks not 
found for signing config 'externalOverride'.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --  
debug option to get more log output.

그리고 로그

Information:Gradle tasks [:app:assembleRelease]
:app:preBuild UP-TO-DATE
:app:preReleaseBuild UP-TO-DATE
:app:checkReleaseManifest
:app:preDebugBuild UP-TO-DATE
:app:prepareComAndroidSupportAppcompatV72311Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42311Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAppindexing810Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesBasement810Library UP-TO-DATE
:app:prepareReleaseDependencies
:app:compileReleaseAidl UP-TO-DATE
:app:compileReleaseRenderscript UP-TO-DATE
:app:generateReleaseBuildConfig UP-TO-DATE
:app:generateReleaseAssets UP-TO-DATE
:app:mergeReleaseAssets UP-TO-DATE
:app:generateReleaseResValues UP-TO-DATE
:app:generateReleaseResources UP-TO-DATE
:app:mergeReleaseResources UP-TO-DATE
:app:processReleaseManifest UP-TO-DATE
:app:processReleaseResources UP-TO-DATE
:app:generateReleaseSources UP-TO-DATE
:app:compileReleaseJavaWithJavac
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
:app:compileReleaseNdk UP-TO-DATE
:app:compileReleaseSources
:app:lintVitalRelease
:app:transformClassesWithDexForRelease
:app:mergeReleaseJniLibFolders
:app:transformNative_libsWithMergeJniLibsForRelease
:app:processReleaseJavaRes UP-TO-DATE
:app:transformResourcesWithMergeJavaResForRelease
:app:validateExternalOverrideSigning FAILED
Error:Execution failed for task ':app:validateExternalOverrideSigning'.
> Keystore file /Users/me/Desktop/final apps/keystore.jks not found for
signing config 'externalOverride'. 

여기 내 Gradle이 있습니다.

apply plugin: 'com.android.application'

android {
compileSdkVersion 23
buildToolsVersion "23.0.2"


defaultConfig {
    applicationId "com.waffles.vatsandbats"
    minSdkVersion 14
    targetSdkVersion 23
}

buildTypes {
    release {
        minifyEnabled false
         proguardFiles getDefaultProguardFile('proguard-android.txt'),
'proguard-rules.txt'     
    }
}
}

dependencies {

compile files('libs/acra-4.7.0-javadoc.jar')
compile files('libs/acra-4.7.0-sources.jar')
compile files('libs/acra-4.7.0.jar')
compile 'com.google.android.gms:play-services-appindexing:8.1.0'
compile files('libs/activation.jar')
compile files('libs/mail.jar')
compile files('libs/additionnal.jar')
compile 'com.android.support:support-v4:23.1.1'
compile 'com.android.support:appcompat-v7:23.1.1'


}

답변:


128

해결책을 찾았습니다. keystore.jks파일 경로를 잘못 배치했습니다 . 내 컴퓨터에서 파일을 검색하면 해당 경로를 사용했으며 모든 것이 훌륭하게 작동했습니다.


2
내 .jks 파일을 다른 위치로 이동 한 후이 오류가 발생하고 android studio x에서 업데이트하는 것을 잊었습니다. 감사합니다
Arbitur

53

파일-> 캐시 무효화 및 다시 시작 ...

빌드-> 서명 된 APK 빌드-> 대화 상자 에서 경로 확인

키 저장소 경로 확인


13

이것은 .jks 파일을 생성하는 동안 경로 대신 "파일 이름"을 기록 할 때 발생할 수있는 문제입니다. 새 파일을 생성하고 데스크톱 (또는 다른 실제 경로)에 배치하고 APK를 다시 생성합니다.


2
Android 스튜디오에서 폴더를 선택할 수 있었는데 그게 내 문제였습니다 ... 키 파일이 아닌 폴더를 선택했습니다 ... -1 for Android Studio에서 무언가를 선택하는 것은 작동하지 않습니다.
Luismi

11

기존 선택을 클릭하고 jks 파일이 있는 위치를 다시 선택하십시오 .

여기에 이미지 설명 입력

이 트릭이 당신에게 효과가 있기를 바랍니다 .


1
바로이 정확한 솔루션입니다
타하 술탄 TEMURI

3

같은 문제가 있습니다. 키 저장소 경로가 없기 때문에 Waffles.inc 솔루션이 표시되고 새로운 문제가 발생했습니다. Mac 용 Android Studio 3.1에서 새 키 저장소 경로를 만들려고 할 때 창 대화 상자 문제가 발생 했습니다.

여기에 이미지 설명 입력

같은 문제가 발생하면 검은 창에 대해 걱정하지 마십시오. 새 키 저장소를 입력하고 저장하는 것입니다.


2

요약 : keystore.jks파일 경로를 확인하십시오 .

제 경우에는 다음과 같은 일이 발생했습니다.

전체 앱의 프로젝트 폴더를 PC의 다른 위치로 옮겼습니다. 훨씬 나중에 서명 된 apk 파일을 생성하고 싶었습니다. 나에게 알려지지 않은 내 경로의 기본 위치가 keystore.jks잘못된 위치로 재설정되어 확인을 클릭했습니다. 선택한 경로에서 키 저장소를 찾을 수 없기 때문에 오류가 발생했습니다.

해결책은 내 keystore.jks파일 경로 가 올바른지 확인하는 것이 었습니다.


0

key.properties를 열고 경로가 올바른지 확인하십시오. (\에서 /로 대체)

예 : -

에서 교체 "storeFile = D : \ 프로젝트 \ 떨림 \ 키 \ key.jks 내의" "storeFile = D : /Projects/Flutter/Key/key.jks를"


0

위에서 시도한 사람들의 경우 React Native 문서처럼 실행할 때 비밀번호 중 하나만 입력했기 때문에 -keypass-storepass 옵션으로 키를 생성 해보 십시오. 이로 인해 빌드를 시도 할 때 오류가 발생했습니다.

keytool -keypass PASSWORD1 -storepass PASSWORD2 -genkeypair -v -keystore release2.keystore -alias release2 -keyalg RSA -keysize 2048 -validity 10000


0

Linux 또는 Ubuntu에서는 전체 경로를 사용해야합니다.

예를 들면

/home/ubuntu/.android/keystorname.keystore

제 경우 ~에는 /home/user/. 아래와 같은 속기 사용은 작동하지 않습니다.

~/.android/keystorname.keystore
./keystorename.keystore

0

키 저장소 파일의 경로를 편집하면 문제가 해결되었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.