Original error: Could not sign with default certificate. Original error spawn ENOTDIR

Hi everybody,

I’ve been trying to create a simple script to open browser but i run into this problem.

[PROBLEM]

WebDriverException: Message: An unknown server-side error occurred while processing the command. Original error: Could not sign with default certificate. Original error spawn ENOTDIR

[APPIUM LOG]

Appium] Appium v1.17.1 creating new AndroidUiautomator2Driver (v1.44.2) session
[debug] [BaseDriver] W3C capabilities and MJSONWP desired capabilities were provided
[debug] [BaseDriver] Creating session with W3C capabilities: {
[debug] [BaseDriver] “alwaysMatch”: {
[debug] [BaseDriver] “platformName”: “Android”,
[debug] [BaseDriver] “appium:platformVersion”: “9 deviceName=emulator-5554”,
[debug] [BaseDriver] “appium:automationName”: “appium”,
[debug] [BaseDriver] “appium:appPackage”: “com.android.browser”,
[debug] [BaseDriver] “appium:appActivity”: “AddBookmarkPage”
[debug] [BaseDriver] },
[debug] [BaseDriver] “firstMatch”: [
[debug] [BaseDriver] {}
[debug] [BaseDriver] ]
[debug] [BaseDriver] }
[BaseDriver] Session created with session id: 4587253c-e599-4630-9022-0900c9bd3645
[UiAutomator2] Starting ‘com.android.browser’ directly on the device
[ADB] Using ‘adb’ from ‘/home/autoadmin/Android/Sdk/platform-tools/adb’
[AndroidDriver] Retrieving device list
[debug] [ADB] Trying to find a connected android device
[debug] [ADB] Getting connected devices…
[debug] [ADB] Connected devices: [{“udid”:“emulator-5554”,“state”:“device”}]
[AndroidDriver] Looking for a device with Android ‘9.0.0’
[debug] [ADB] Setting device id to emulator-5554
[ADB] Getting device platform version
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell getprop ro.build.version.release’
[debug] [ADB] Current device property ‘ro.build.version.release’: 9
[AndroidDriver] Using device: emulator-5554
[ADB] Using ‘adb’ from ‘/home/autoadmin/Android/Sdk/platform-tools/adb’
[debug] [ADB] Setting device id to emulator-5554
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell getprop ro.build.version.sdk’
[debug] [ADB] Current device property ‘ro.build.version.sdk’: 28
[ADB] Getting device platform version
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell getprop ro.build.version.release’
[debug] [ADB] Current device property ‘ro.build.version.release’: 9
[debug] [ADB] Device API level: 28
[UiAutomator2] Relaxing hidden api policy
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell settings put global hidden_api_policy_pre_p_apps 1’
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell settings put global hidden_api_policy_p_apps 1’
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell settings put global hidden_api_policy 1’
[AndroidDriver] No app sent in, not parsing package/activity
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 wait-for-device’
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell echo ping’
[debug] [AndroidDriver] Pushing settings apk to device…
[debug] [ADB] Getting install status for io.appium.settings
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell dumpsys package io.appium.settings’
[debug] [ADB] ‘io.appium.settings’ is not installed
[debug] [ADB] App ‘/usr/lib/node_modules/appium/node_modules/io.appium.settings/apks/settings_apk-debug.apk’ is not installed
[debug] [ADB] Installing ‘/usr/lib/node_modules/appium/node_modules/io.appium.settings/apks/settings_apk-debug.apk’
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 features’
[ADB] The application at ‘/usr/lib/node_modules/appium/node_modules/io.appium.settings/apks/settings_apk-debug.apk’ will not be cached, because the device under test has confirmed the support of streamed installs
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 install -g /usr/lib/node_modules/appium/node_modules/io.appium.settings/apks/settings_apk-debug.apk’
[ADB] The installation of ‘settings_apk-debug.apk’ took 109ms
[debug] [ADB] Install command stdout: Performing Streamed Install
[debug] [ADB] Success
[debug] [ADB] Getting IDs of all ‘io.appium.settings’ processes
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell ‘pgrep --help; echo $?’’
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell pgrep -f io\.appium\.settings’
[debug] [ADB] Getting IDs of all ‘io.appium.settings’ processes
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell pgrep -f io\.appium\.settings’
[debug] [ADB] Starting Appium Settings app
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell am start -n io.appium.settings/.Settings -a android.intent.action.MAIN -c android.intent.category.LAUNCHER’
[debug] [ADB] Getting IDs of all ‘io.appium.settings’ processes
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell pgrep -f io\.appium\.settings’
[debug] [ADB] Getting IDs of all ‘io.appium.settings’ processes
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell pgrep -f io\.appium\.settings’
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell appops set io.appium.settings android:mock_location allow’
[debug] [Logcat] Starting logcat capture
[debug] [UiAutomator2] Forwarding UiAutomator2 Server port 6790 to 8200
[debug] [ADB] Forwarding system: 8200 to device: 6790
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 forward tcp:8200 tcp:6790’
[UiAutomator2] Server package at ‘/usr/lib/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-v4.5.5.apk’ is not writeable. Will copy it into the temporary location at ‘/tmp/2020620-4638-1sxcbv1.qikt’ as a workaround. Consider making this file writeable manually in order to improve the performance of session startup.
[UiAutomator2] Server package at ‘/usr/lib/node_modules/appium/node_modules/appium-uiautomator2-server/apks/appium-uiautomator2-server-debug-androidTest.apk’ is not writeable. Will copy it into the temporary location at ‘/tmp/2020620-4638-1sxcbv1.qikt’ as a workaround. Consider making this file writeable manually in order to improve the performance of session startup.
[debug] [ADB] Getting install status for io.appium.uiautomator2.server
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell dumpsys package io.appium.uiautomator2.server’
[debug] [ADB] ‘io.appium.uiautomator2.server’ is not installed
[debug] [ADB] App ‘/tmp/2020620-4638-1sxcbv1.qikt/appium-uiautomator2-server-v4.5.5.apk’ is not installed
[debug] [UiAutomator2] io.appium.uiautomator2.server installation state: notInstalled
[debug] [ADB] Checking app cert for /tmp/2020620-4638-1sxcbv1.qikt/appium-uiautomator2-server-v4.5.5.apk
[ADB] Using ‘apksigner.jar’ from ‘/home/autoadmin/Android/Sdk/build-tools/30.0.1/lib/apksigner.jar’
[debug] [ADB] Starting apksigner: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.el7_8.x86_64/jre/bin/java/bin/java -Xmx1024M -Xss1m -jar /home/autoadmin/Android/Sdk/build-tools/30.0.1/lib/apksigner.jar verify --print-certs /tmp/2020620-4638-1sxcbv1.qikt/appium-uiautomator2-server-v4.5.5.apk
[ADB] Cannot use apksigner tool for signature verification. Original error: spawn ENOTDIR
[debug] [ADB] Defaulting to verify.jar
[debug] [ADB] ‘/tmp/2020620-4638-1sxcbv1.qikt/appium-uiautomator2-server-v4.5.5.apk’ is not signed with the default certificate
[debug] [ADB] spawn ENOTDIR
[ADB] Using ‘zipalign’ from ‘/home/autoadmin/Android/Sdk/build-tools/30.0.1/zipalign’
[debug] [ADB] /tmp/2020620-4638-1sxcbv1.qikt/appium-uiautomator2-server-v4.5.5.apk’ is already zip-aligned. Doing nothing
[debug] [ADB] Signing ‘/tmp/2020620-4638-1sxcbv1.qikt/appium-uiautomator2-server-v4.5.5.apk’ with default cert
[debug] [ADB] Starting apksigner: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.el7_8.x86_64/jre/bin/java/bin/java -Xmx1024M -Xss1m -jar /home/autoadmin/Android/Sdk/build-tools/30.0.1/lib/apksigner.jar sign --key /usr/lib/node_modules/appium/node_modules/appium-adb/keys/testkey.pk8 --cert /usr/lib/node_modules/appium/node_modules/appium-adb/keys/testkey.x509.pem /tmp/2020620-4638-1sxcbv1.qikt/appium-uiautomator2-server-v4.5.5.apk
[ADB] Cannot use apksigner tool for signing. Defaulting to sign.jar. Original error: spawn ENOTDIR
[debug] [ADB] Starting sign.jar: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.el7_8.x86_64/jre/bin/java/bin/java -jar /usr/lib/node_modules/appium/node_modules/appium-adb/jars/sign.jar /tmp/2020620-4638-1sxcbv1.qikt/appium-uiautomator2-server-v4.5.5.apk --override
[debug] [UiAutomator2] Deleting UiAutomator2 session
[debug] [UiAutomator2] Deleting UiAutomator2 server session
[debug] [WD Proxy] Matched ‘/’ to command name ‘deleteSession’
[UiAutomator2] Did not get confirmation UiAutomator2 deleteSession worked; Error was: UnknownError: An unknown server-side error occurred while processing the command. Original error: Trying to proxy a session command without session id
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell am force-stop com.android.browser’
[debug] [Logcat] Stopping logcat capture
[debug] [ADB] Removing forwarded port socket connection: 8200
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 forward --remove tcp:8200’
[UiAutomator2] Restoring hidden api policy to the device default configuration
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell settings delete global hidden_api_policy_pre_p_apps’
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell settings delete global hidden_api_policy_p_apps’
[debug] [ADB] Running ‘/home/autoadmin/Android/Sdk/platform-tools/adb -P 5037 -s emulator-5554 shell settings delete global hidden_api_policy’
[debug] [BaseDriver] Event ‘newSessionStarted’ logged at 1595228895173 (14:08:15 GMT+0700 (Indochina Time))
[debug] [W3C] Encountered internal error running command: Error: Could not sign with default certificate. Original error spawn ENOTDIR
[debug] [W3C] at ADB.signWithDefaultCert (/usr/lib/node_modules/appium/node_modules/appium-adb/lib/tools/apk-signing.js:81:13)
[debug] [W3C] Destroying socket connection
[HTTP] <-- POST /wd/hub/session 500 1289 ms - 623
[HTTP]

JAVA_HOME environment variable is corrupted. Consider fixing it

1 Like

Hi,

This is my bashrc config. Is there anything wrong with JAVA_HOME ?

User specific aliases and functions

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.el7_8.x86_64/jre/bin/java
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

export ANDROID_HOME=$HOME/Android/Sdk
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
export ANDROID_SWT=$HOME/Android/Sdk/tools/lib/x86_64/
export PATH

Hi, thank for helping me. But i was using centos 7, is it the same with MAC OSX?

https://www.google.com/search?q=java_home+cent+os

Is gentleman blocked from Google search?

@mykola-mokhnach
https://lmgtfy.com/?q=java_home+cent+os