Lỗi Android khi tạo APK đã ký: không tìm thấy keystore.jks để ký cấu hình 'externalOverride'


85

Tôi gặp lỗi này khi cố gắng tạo APK đã ký. Gần đây tôi đã nâng cấp lên API 23 nhưng đã tạo APK: s thành công sau đó. Tôi bối rối. Yêu cầu sự giúp đỡ và tư vấn cách giải quyết vấn đề này. Đây là lỗi

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.

Và nhật ký

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'. 

Đây là Gradle của tôi

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'


}

Câu trả lời:


128

Tôi đã tìm ra giải pháp. Tôi đã đặt nhầm đường dẫn đến keystore.jkstệp. Đã tìm kiếm tệp trên máy tính của tôi đã sử dụng đường dẫn đó và mọi thứ đều hoạt động tốt.


2
Tôi gặp lỗi này sau khi di chuyển tệp .jks của mình sang vị trí khác và quên cập nhật trong android studio x) Cảm ơn
Arbitur

53

Tệp -> Vô hiệu hoá Bộ nhớ cache & Khởi động lại ...

Xây dựng -> Xây dựng APK đã ký -> kiểm tra đường dẫn trong hộp thoại

Kiểm tra đường dẫn kho khóa


13

Đây là một vấn đề có thể phát sinh khi viết ra "tên tệp" thay vì đường dẫn trong khi tạo tệp .jks. Tạo một cái mới, đặt nó trên Màn hình nền (hoặc bất kỳ đường dẫn thực nào khác) và tạo lại APK.


2
Android studio cho phép bạn chọn một thư mục và đó là vấn đề của tôi ... Tôi đã chọn thư mục, không phải tệp khóa ... -1 cho Android Studio vì cho phép chọn thứ gì đó sẽ không hoạt động.
Luismi

11

Nhấp vào chọn hiện có và một lần nữa chọn vị trí chứa tệp jks của bạn .

nhập mô tả hình ảnh ở đây

Tôi hy vọng thủ thuật này hiệu quả với bạn .


1
chính xác đây là giải pháp chính xác
Taha SULTAN TEMURI

3

Tôi gặp sự cố tương tự, vì tôi không có đường dẫn kho khóa, sau đó tôi thấy các giải pháp Waffles.inc và gặp sự cố mới Trong Android Studio 3.1 dành cho mac của tôi, gặp sự cố hộp thoại cửa sổ khi cố gắng tạo đường dẫn kho khóa mới , nó như thế này

nhập mô tả hình ảnh ở đây

nếu bạn gặp vấn đề tương tự, đừng lo lắng về các cửa sổ màu đen, nó chỉ cần nhập kho khóa mới của bạn và sau đó lưu.


2

TL; DR: Kiểm tra đường dẫn đến keystore.jkstệp của bạn .

Trong trường hợp của tôi, đây là những gì đã xảy ra:

Tôi đã chuyển thư mục dự án của toàn bộ ứng dụng sang một vị trí khác trên PC của mình. Rất lâu sau đó, tôi muốn tạo một tệp apk đã ký. Tôi không biết, vị trí mặc định của đường dẫn đến của tôi keystore.jksđã được đặt lại ở một vị trí sai và tôi đã nhấp vào đồng ý. Vì nó không thể tìm thấy kho khóa tại đường dẫn tôi đã chọn nên tôi gặp lỗi đó.

Giải pháp là kiểm tra xem đường dẫn đến keystore.jkstệp của tôi có đúng không.


0

mở key.properties và kiểm tra xem đường dẫn của bạn có đúng không. (thay thế từ \ thành /)

ví dụ: -

thay thế từ "storeFile = D: \ Projects \ Flutter \ Key \ key.jks" thành "storeFile = D: /Projects/Flutter/Key/key.jks"


0

Đối với những người đã cố gắng trên, hãy thử tạo phím với -keypass-storepass tùy chọn như tôi đã chỉ nhập một trong những mật khẩu khi chạy nó như Phản ứng docs Native có bạn. Điều này khiến nó bị lỗi khi cố gắng xây dựng.

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


0

Trên Linux hoặc Ubuntu, bạn cần sử dụng đường dẫn hoàn chỉnh.

Ví dụ

/home/ubuntu/.android/keystorname.keystore

Trong trường hợp của tôi, tôi đã sử dụng ~thay vì /home/user/. Sử dụng các phím tắt như bên dưới không hoạt động

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

0

Chỉnh sửa đường dẫn của tệp kho khóa đã giải quyết được vấn đề của tôi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.