I am trying to build an Adroid app with javascript... using Apache Cordova. I have followed the instructions and installed the required components but it doesn't work! I get this when I enter build:
C:\Users\qiova\cordova\hello>cordova build
Checking Java JDK and Android SDK versions
ANDROID_SDK_ROOT=undefined (recommended setting)
ANDROID_HOME=undefined (DEPRECATED)
Using Android SDK: C:\Users\qiova\AppData\Local\Android\sdk
Subproject Path: CordovaLib
Subproject Path: app
FAILURE: Build failed with an exception.
Where:
Script 'C:\Users\qiova\cordova\hello\platforms\android\CordovaLib\cordova.gradle' line: 69
What went wrong:
A problem occurred evaluating script.
No installed build tools found. Please install the Android build tools version 30.0.3.
Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
See https://docs.gradle.org/7.1.1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 3s
Command failed with exit code 1: C:\Users\qiova\cordova\hello\platforms\android\gradlew cdvBuildDebug -b C:\Users\qiova\cordova\hello\platforms\android\build.gradle
I am trying to build an Adroid app with javascript... using Apache Cordova. I have followed the instructions and installed the required components but it doesn't work!
You can download an android sdk in android studio. Just go to settings preferences and search for sdk, there you can add build tools for version 30.0.3. There you can also see what the path is for the sdk. You should add that path to your environment variables (~/.zshrc)
ANDROID_SDK_ROOT=PATH/TO/SDK
and add the thools to your path:
PATH=ANDROID_SDK_ROOT/tools:$PATH
You should also add the folder that contains you platform tools to your path. You can download those here: https://developer.android.com/studio/releases/platform-tools
If you are still getting the error, you can explicitly point to your build tools as well, by adding them to you environment variables too, with: PATH=${PATH}:path/to/build/tools (they are inside your sdk, platform tools should be there too)
Let me know if you still experience errors.
Related
After running npx react-native run-android here is the message from terminal:
FAILURE: Build failed with an exception.
Where:
Build file '/Users/vivek/Documents/Code-Here/React-Native/instaClone/android/app/build.gradle' line: 1
What went wrong:
A problem occurred evaluating project ':app'.
Failed to apply plugin 'com.android.internal.application'.
Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.
You can try some of the following options:
- changing the IDE settings.
- changing the JAVA_HOME environment variable.
- changing org.gradle.java.home in gradle.properties.
Try:
Run with --stacktrace option to get the stack trace.
Run with --info or --debug option to get more log output.
Run with --scan to get full insights.
Get more help at https://help.gradle.org
BUILD FAILED in 7s
error Failed to install the app. Make sure you have the Android development environment set up: https://reactnative.dev/docs/environment-setup.
Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081
FAILURE: Build failed with an exception.
Where:
Build file '/Users/vivek/Documents/Code-Here/React-Native/instaClone/android/app/build.gradle' line: 1
What went wrong:
A problem occurred evaluating project ':app'.
Failed to apply plugin 'com.android.internal.application'.
Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.
You can try some of the following options:
- changing the IDE settings.
- changing the JAVA_HOME environment variable.
- changing org.gradle.java.home in gradle.properties.
Be sure to always read the error message carefully, because it will likely tell you what is wrong and how you can fix it!
In this case, the error is telling you that you don't have the correct version of Java installed on your system. Gradle, which React Native uses to create a native Android build, requires Java 11 to be installed on your system, whereas you only have version 1.8.
This means you need to install an up-to-date JDK, which you can do by following the React Native Environment Setup instructions for Android for your specific operation system.
I cloned the repo https://github.com/Schveitzer/webdriverio-appium-cucumber-boilerplate and tried to run the tests.
I consistently get the following error.
2022-06-16T22:51:13.157Z ERROR #wdio/runner: Error: Failed to create session.
Unable to connect to "http://localhost:4723/", make sure browser driver is running on that address.
If you use services like chromedriver see initialiseServices logs above or in wdio.log file as the service might had problems to start the driver.
Steps:
Clone the repo
Download the latest version of the demo app which Android-NativeDemoApp-0.4.0.apk. The one in the repo does not work.
Update the capabilities.
Yarn Install/Yarn Run
I made some changes. However, was not able to resolve the issue. Any suggestions to resolve the issue?
From the error, it seems that appium server is not running. One reason could be that the repo has an old version of packages and you might have installed the latest version of appium.
One thing you could try is to remove the this line from the config file and try the below.
Start the appium server using the command appium on terminal
Run your tests and see if it works
Otherwise, you have to upgrade all the packages in the repo. but this also means you may have to change something in the code.
Your appium server is likely not running, from package.json I can see that the appium-service that is supposed to get it up is missing. You have two options:
install the #wdio/appium-service package, and appium should run automatically or
start the appium server yourself, either from the terminal with appium -a 127.0.0.1 -p 4723 or launch the appium desktop app
My head is so pain right now, I just screw up my old project and not able to run currently, So I guess I just create a new react native project and transfer my code to it, guess what? I hit this error after my creation of react native and ran react-native run-android.
:app:compileDebugSources UP-TO-DATE
:app:transformClassesWithDexForDebug
Running dex in-process requires build tools 23.0.2.
For faster builds update this project to use the latest build tools.
:app:transformClassesWithDexForDebug FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: dx.jar is missing
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 4.998 secs
Could not install the app on the device, read the error above for details.
Make sure you have an Android emulator running or a device connected and have
set up your Android development environment:
https://facebook.github.io/react-native/docs/getting-started.html
This multidex thing, I never set this before or anything previously on my 1st project like 1 week ago. With a new project, I can't even run my android emulator with react-native run-android for the 1st time.
Someone please help me to solve this issue please.
There are some common solutions for this issue. First of all you need to find your buildToolsVersion in gradle file.
To import react native project into android studio follow these steps.
Open Android Studio and click Open existing project
Find your project folder and inside that there will be folder called android
Open that folder with android studio
Make sure you have the newest android studio release.
If there is any build error just fix them simply by clicking the errors.
Once you have correctly build your project find build.gradle (Module:app) file under Gradle Scripts.
There you can see the buildToolsVersion of your current project. Change it like this
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
After that clean your android project using Build > Clean Project
Next rebuild your android project using Build > Rebuild Project
After that navigate your react native project folder and delete build folder.
It can be found here YourProject > android > app > build
Then before you run your react native project, note that Android Emulator is already running. If not run your android emulator using android studio
Finally run your react native project using react-native run-android
I have hitting my head on this for past 3 hours.
What i call: ../../latest-cli/nativescript-cli/bin/tns run android --watch --device=emulator-5554
Some ideas would be awesome!
Make sure you have all of the latest parts of NativeScript (core modules, runtime, and CLI). There's a great blog post here: http://fluentreports.com/blog/?p=323 which outlines that all of the above need to be in sync. Then you should try running tns platform remove android then tns platform add android. Then make sure you uninstall this failed build, and install a fresh build after adding the platform back.
Also just open the emulator and call tns livesync android --watch and the CLI will detect the running emulator. No need to specify.
I'm following the Get Started tutorial on https://cordova.apache.org/#getstarted but I'm getting an error despite following the instructions clearly, this is what I did:
npm install -g cordova
cordova create myApp
cd myApp
cordova platform add browser
cordova run browser
but at the end of the last command, I get an error:
C:\code\cordova\test
λ cordova run browser
Running command: cmd "/s /c "C:\code\cordova\test\platforms\browser\cordova\run.bat""
C:\code\cordova\test\platforms\browser\cordova\node_modules\cordova-serve\node_modules\q\q.js:155
throw e;
^
Error: listen EACCES
at exports._errnoException (util.js:746:11)
at Server._listen2 (net.js:1139:19)
at listen (net.js:1182:10)
at Server.listen (net.js:1267:5)
at module.exports (C:\code\cordova\test\platforms\browser\cordova\node_modules\cordova-serve\src\server.js:134:8)
at C:\code\cordova\test\platforms\browser\cordova\node_modules\cordova-serve\src\platform.js:45:16
at _fulfilled (C:\code\cordova\test\platforms\browser\cordova\node_modules\cordova-serve\node_modules\q\q.js:834:54)
at self.promiseDispatch.done (C:\code\cordova\test\platforms\browser\cordova\node_modules\cordova-serve\node_modules\q\q.js:863:30)
at Promise.promise.promiseDispatch (C:\code\cordova\test\platforms\browser\cordova\node_modules\cordova-serve\node_modules\q\q.js:796:13)
at C:\code\cordova\test\platforms\browser\cordova\node_modules\cordova-serve\node_modules\q\q.js:857:14
ERROR running one or more of the platforms: Error: cmd: Command failed with exit code 1
You may not have the required environment or OS to run this project
Does anyone have any idea why this is happening?
I'm using NodeJS v0.12.7 and Cordova 5.4.0
I have had a similar issue on my Debian 8.3 (jessie) with an installed Chromium from the offical debian package-sources.
The detailled error message was:
Error: Error executing "google-chrome --user-data-dir=/tmp/temp_chrome_user_data_dir_for_cordova http://localhost:8000/index.html": /bin/sh: 1: google-chrome: not found
To fix the issue, I have downloaded the (Google-) Chrome-Browser directly from their website, and installed the .deb-package.
After that I did a
cordova platform rm browser
cordova platform add browser
cordova build browser
cordova run browser
and it finally worked.
Summary:
Chromium doesn't work - use chrome
Although the tutorial you linked says browser for some reason. I don't see it on their "supported platform list", try using a platform which you think you're going to develop for and see if you have the same issues.
Link to the platform list (odd that browser isn't listed): https://cordova.apache.org/docs/en/latest/guide/support/index.html
This is a late reply, maybe will help someone else.
instead of
cordova run browser
You should try "cordova serve" command after the add platform browser..
cordova platform add browser
cordova serve
after this hopefully if everything is set up right , you will get a message
"server runing on localhost:/port" . Just goto that address on your browser..
see the magic.
I'm confused why you want to deploy it from the command line to a browser instead of a device or an emulator.
Wouldn't you just open index.html in the browswer?
Take a look at the Cordova Windows Platform Guide
It goes more into detail about running Cordova on a windows platform.
Requirements:
To develop apps for Windows platform:
Windows 8.0, 8.1, or 10, 32 or 64 bit Home, Pro, or Enterprise
Visual Studio 2013
To develop apps for Windows 10:
Visual Studio 2015 RC or higher
Note: For Windows 10, the Visual Studio installer has an option to install tools to build Universal Windows Apps. You must ensure that this option is selected when installing to install the required SDK.
Create a New Project
At this point, to create a new project you can choose between the cross-platform CLI tool described in The Command-Line Interface, or the set of Windows-specific shell tools. The CLI approach below generates an app named HelloWorld within a new hello project directory:
> cordova create hello com.example.hello HelloWorld
> cd hello
> cordova platform add windows
Here's the corresponding lower-level shell-tool approach:
C:\path\to\cordova-windows\package\bin\create.bat C:\path\to\new\hello com.example.hello HelloWorld
Build the Project
If you are using the CLI in development, the project directory's top-level www directory contains the source files. Run either of these within the project directory to rebuild the app:
> cordova build
> cordova build windows # do not rebuild other platforms
> cordova build windows --debug # generates debugging information
> cordova build windows --release # signs the apps for release
Here's the corresponding lower-level shell-tool approach:
C:\path\to\project\cordova\build.bat --debug
C:\path\to\project\cordova\build.bat --release
The clean command helps flush out directories in preparation for the next build:
C:\path\to\project\cordova\clean.bat
Deploy the app
To deploy Windows package:
> cordova run windows -- --win # explicitly specify Windows as deployment target
> cordova run windows # `run` uses Windows package by default
Also before executing the command:
cordova create myApp
make sure to cd into a user directory or a directory where you will keep your cordova apps
Ok, I also had this problem, and couldn't figure out what was going on for the life of me. I finally figured it out:
The guy didn't have Chrome installed. Installed Chrome, poof, problem solved.
Let this be a lesson for us all.