How to change the Location of the JDK in Android studio - android-studio

I tried to change the location by the following way
Project Structure > SDK location > JDK Location > ...
But it always reverts to the old address saved in it.
It's not saving the new location entered in it.
Please help me to solve this issue

I had the same problem and it was because I had a whitespace (which I can see is your case) in my JDK path. Try changing your JDK path to something like C:\jdk_1.7.0

Install the 32 bit java version. Problem will be resolved

Related

Invalid Gradle JDK configuration found. What is the best solution?

when i try to run an app written by others in a different PC in my android studio, i get this error message.
Invalid Gradle JDK configuration found. Open Gradle Settings
Use Embedded JDK (C:\Program Files\Android\Android2\jre)
Change JDK location.
I just want to run this in my AStudio and check the app. what is best and easiest recommendation..
Go to File > Project Structure and change JDK location to Embedded JDK You can use short key Ctr+Alt+Shift+S

Upgrade Android Studio but AVD manager doesnt work

What went wrong:
Execution failed for task ':path_provider:compileDebugJavaWithJavac'.
Could not find tools.jar. Please check that C:\Program Files (x86)\Java\jre1.8.0_241 contains a valid JDK installation.
I changed gradle.properties, some files works by changing to org.gradle.jvmargs=-Xmx1024m
most of the files doesnt work.
please help
regards,
Your jdk path should resemble like this "C:\Program Files\Java\jdk1.8.0_241".
The path you've mentioned above is jre.
Also, I think you've recently changed your JAVA_PATH in your system or installed any other software to create JDK path in their installed director, which now conflicts with your old path.
Anyway, go to your Environmental Variables and check for the JAVA_PATH and PATH variables contain the correct jdk path or not.

Android Studio “cannot resolve symbol R” but project compiles and runs

Android Studio displays in all java files in red : “cannot resolve symbol R” but the project compiles and runs.
I have tried every solution here:
Android Studio "cannot resolve symbol" but project compiles and works, but with no luck.
I tried to :
invalidate caches and restart android studio
delete .gradle and .idea folders
clean and rebuild the project
install a new version of android studio
mess up with gradle file then undo changes and sync project
One thing that I want to try, but I don't know how to achieve, is to reopen the project from scratch as I was opening it for the first time, but I don't know how to do this.
I also tried answers from here:
Android Studio says "cannot resolve symbol" but project compiles,
but again with no luck.
Android studio version = 3.2.1
dependency versions in gradle project file:
classpath 'com.android.tools.build:gradle:3.4.0-alpha01'
classpath 'com.google.gms:google-services:4.0.0'
For some reason that i do not understand ,
this combination of build versions made the issue :
grade version = 4.10.1
classpath 'com.android.tools.build:gradle:3.4.0-alpha01'
when i switched to these build versions :
grade version = 4.6
classpath 'com.android.tools.build:gradle:3.2.1'
The issue was solved !
File -> Close project
Open an existing Android Studio Project
Open you project
Hope it will work.
sometimes, R file is not generated because of package name on android manifest is not match with package module that you have.
Is any wrong syntax or spelling in your xml?
Check your layout or any xml file.
Android Studio seems to have a caching issue with R.java occasionally. I rarely have a problem with this, but when I do, I actually open R.java (double press shift and type "R.java") or navigate to R.java under "app/build/generated/source" directory, opening the file and checking if the relevant XML id has been created. If it has, it forces Android Studio to now recognise the id's that are not being resolved. It's quick to try, and doesn't require clean and rebuild.
From your programs menu, open android studio. instead of opening your project from the recent files, select to open a project from your computer and then locate the path to your project. When all else fails, sometimes this works.
Also, try commenting out the support libraries from your gradle implementation, sync your project, and after sync fails comment them back in and sync again. (not sure if that's what you tried already when you said you messed with the gradle file)
In my case,
I am using
- Android Studio version 3.3.1 at home
- Android Studio version 3.2.1 at office
When i pulled projects to my office computer that are firstly created at my home computer ,
Android Studio can not resolved R file but runs application with no error. Because projects gradle and Android Studio version are incompatible.
Only thing that you sholud do, change the gradle version in project level gradle file
classpath 'com.android.tools.build:gradle:3.3.1'
to
classpath 'com.android.tools.build:gradle:3.2.1'
I was facing same issue,
first thought the issue might because of some xml file or naming of drawable resources incorrectly. After analysing, this case wasn't applicable to me.
So
Updating Android studio from older version 3.2 to newer version 3.3.2 along with new build tool version from SDK manager resolved this issue
for me.
I've tried invalidate cache and Restart AS with clean rebuild all the options but didn't work for me.
It says cannot resolve symbol, but it can run.
In my case, I just reload the needed *.jar files to the libs folder.
File >> invalidate caches/restart
Rebuild Project
Sync
Run
Works for me!
It looks like the library did not load my "imports" properly the first time.
That's why the import methods cannot be seen in my main_activity.xml.
This happened to me when I was going back and forth between different SDK versions.
Apparently SDK manager copied all the source files but it didn't finish cleanly. As a result I could compile and run my project just fine but IDE didn't recognize the SDK and reported all java symbols unresolved.
None of the above and other solutions in SO didn't work for me, but just uninstalling/reinstalling the specific SDK version did a job.
If you renamed your package (inside java folder), make sure you change your Manifest package name to the same
The only thing that worked for me was,
replacing,
import package_name.R
with
import package_name.*
simply go to project settings : settings.gradel and change the rootProject.name to your current name
rootProject.name = "write the project name here"

Android Studio shows an error when trying to use Embedded JDK instead of a custom install

After I updated to Android Studio 2.3, I haven't been able to use the embedded JDK. When I try to build the project, I get errors like this:
Error:The newly created daemon process has a different context than expected.
Java home is different.
Expecting: 'D:\Development\IDE\AndroidStudio\jre' but was: 'C:\Program Files\Java\jre1.8.0_121'.
Please configure the JDK to match the expected one.
Open JDK Settings
But the JAVA_HOME environment variable isn't defined, but I can still use the normal JDK any problems, so I don't believe that's a problem. Where does Android Studio find the JAVA_HOME that prevents me from using the embedded JDK?
I tried uninstalled the system JDK to get it to work, and I updated java, which lead to it pointing to the JRE. I then reinstalled the JDK and when I point to it, it works fine. But I want to use the embedded JDK. Any ideas?
I have tried setting JAVA_HOME in gradle.properties, as linked in comments, but it still shows the error.
The line I added was:
org.gradle.java.home=D:/Development/IDE/AndroidStudio/jre
It should make the embedded JDK work (and change JAVA_HOME in the IDE) but it doesn't. It still leads to the same error mentioned at the top of this post.
In the snippet it says jre, and that was because when I copied it, I had just uninstalled the JDK. Updating the JDK and Java resulted in JAVA_HOME being set to the JDK location, but it isn't defined as an environment variable. I tried deleting the JDK table in Android Studio's config folder, but it did not work.
And what it looks when I set the JDK to be the embedded:
Try to reset your path of your updated JDK. and check it again. May be it will help you. Also clear your android studio temp cache and all.
I fixed this issue by uninstalling all the jdk installation & updates then reinstall only one jdk and assure its env. variables
I do not have a solution but I have the same problem it happens as the android studio opens from java_home/jre thence all JVMs that will fork next will come from this path, while your system varible tells Gradle to get his java.exe from JAVA_HOME
I tried to make gradle read from jre but it falied also i tried to make android studio open from java_home/bin but it falid also
I had the exactly same issue with embedded JDK which was working on Android studio version 2.2.3 and when I updated then every time studio prompts JRE not found then I added system JDK path in project folder and now Whole Android studio hanging and I switched back to Android studio 2.2.3. It seems Android studio 2.3.1 is buggy release.
It seems ,There are some miss match of JDK version.
So Try this:
First Uninstall all Jdk/jre and Android Studio.
Clear temp/prefetch etc.
then Simply Install latest version of Android studio.
Remember: Don't install any other JDK/jre and make sure that your system have proper internet connectivity.All missing file automatically downloaded.
I had try this already and it was work for me .I hope it will also work for you.
I must say the AS has too many trouble in environment settings. There are some concepts we need to know.
AS default java runtime environment itself ,as shown below.
AS default java runtime environment itself.
System has another Java_home as shown below.
System's JDK version
Then problem is coming , what will happen when the system's JDK version doesn't match the AS's JDK version?
i.
java.lang.UnsupportedClassVersionError
ii.
gradle failure:certification ...
iii. There are some other error I couldn't remember now.
Solution:
If your AS update to latest version,you should update your Gradle to latest version,and make sure your system's JDK is match AS's JDK version. At least, your idk version update to more than JDK1.8.0. When you do all of this ,try to restart your AS ,if does works ,try to restart your computer.
Extra:
The proxy software has some influences when Gradle sync, if there are any tips about certificate ,try to close proxy software and try again.

Android Studio Update: Some conflicts found in installation area

When I start Android Studio, it shows popup regarding new update of 1.1 release. But when I start updating, After downloading all patch files, while restarting, it shows following error:
I searched almost everywhere on Google and Stackoverflow. There are already two questions on so: this and this. But none of them are have any correct answer. I also tried running as administrator, restarting PC, turning off the firewall, uninstalling antivirus. But none of them worked.
I am using windows 7 32-bit. How to solve this problem? Can anyone help?
I know this is an older question but I encountered the same error while updating SDK components in Android Studio 2.3.3. I was able to fix the problem by starting the SDK manager and un-checking the components that showed the error and clicked "Apply". That un-installed just that component. When it was finished, I re-checked the component and clicked "Apply" again. When it was finished, the problematic component was updated to the newest version. This was much quicker than doing a full un-install/re-install as stated in one of the solutions above.
Hope this helps someone.
This is another option, it is not much easier than reinstalling but at least you don't have to worry about your settings getting lost
Go to help->about and note the version you currently have installed
Download zip file for your current version at https://developer.android.com/studio/archive
Manually overwrite conflicted files with files from zip
Update normally
I had a similar problem on some other files and could not figure it out.
You should download the last Android Studio version and remove the old one.
It appears like the only way to bypass this error and successfully update Android Studio is to uninstall and reinstall it.
Before uninstalling, make a backup of your IDE settings through File | Export Settings.
Download the "No SDK tools included" exe from the Other Downloads section. Avoid using download accelerators as they often mess up the downloads from https://dl.google.com .
In the Install Wizard, you may uncheck to update AVD if you use Genymotion and don't need Google's Android emulator.
Use the JetBrains Toolbox for Android Studio update, problem solved. No need to mess with the file permissions. Especially on company devices.
I had this issue on Ubuntu 18.04 when tried to update Android Studio from 3.4 to 3.5 version. I have changed Android Studio directory's ownership to my user:
sudo chown -R <username> /opt/android-studio
It resolved all but one errors for me, because I still had a jre/bin/java - Access Denied error, which I have resolved by killing its process:
# The second column of this command's output is PID.
ps -aux | grep /opt/android-studio/jre/bin/java
kill <PID>
It might also happen that you need to logout and and re login as admin user in your system.
Update the Android studio [in admin user].
Re login as a previous user.
You should check the JDK Location settings, which appears be changed on every Android Studio update, with commands ctrl + Alt + Shift + S (to reveal the Project Structure menu options, and uncheck the Use embedded JDK and find your current JDK Location, on windows machines, you can see that location on environment variables JAVA_HOME.
There is a workaround, try deleting or moving the files that are causing the conflicts to another folder when the Update starts NOT BEFORE! That worked for me.
I know this is a very old question, but I face this issue almost every time I try to update my studio. Only solution I know which works for sure is clean install of studio....which is time consuming. So the solution is when you get to know the name of the file, search the location of that folder containing specified file. Check if that folder has lock icon on it, if it has then change the sharing settings to everyone and share the folder. If it does not have the lock icon on the folder check if it is in read-only mode. This worked for me hopefully someone finds this useful.
Cheers.
I had a similar problem. What I did was to make sure of the whole folder's ownership. For some reason, some files where owned by root, so I changed it to my ownership. In linux you can use the followoing command on the Android Studio folder:
sudo chown yourusername:yourusername -R android-studio-folder
I just tried again and everything updated successfully. Hope it helps!
The only solution worked for me is I have reinstalled Android Studio the latest version without uninstalling manually it and when starting the installer it asked me to uninstall and said that your settings will not be lost so I checked the uninstall and everything went smooth without any problems and got the latest version installed and all my settings the same.
I had this symptom when updating from Android Studio 3.4.2 to 3.5.
In my case, the affected file was plugins/Kotlin/kotlinc/bin/kotlinc.
The cause turned out to be that while the file's contents had not been modified at all... the Unix permissions bits on it had been.
Specifically, this was a file that comes as non-executable, and I had at some point chmod'd it to executable (because it should be) in order to use it from the command line.
The fix was to set those permissions bits back, with chmod:
$ chmod a-x /PATH/TO/android-studio/plugins/Kotlin/kotlinc/bin/*
This probably isn't a super common cause for this symptom, but hopefully it will be helpful to someone else. :-) I certainly didn't remember making that change, though once I spotted it I know exactly why I made it.
You can found the files in the android-sdk folder, and delete those files, and check your permission of the folder(android-sdk, build-tools, tools), if your can write, and download again.
I solve the issue.
I had the same error when upgrading from 3.1.x to 3.5.x. What worked for me was downloading the new Android Studio image from https://developer.android.com/studio and installing it (when asking me if I want to replace the old version I said yes). Everything seems to work fine now.
I also had the same error when upgrading from 3.5 to 3.6, I managed to solve this without losing any sdk platforms and virtual machines in avd by installing the latest version of android,First Export the settings and then delete the two folders ".AndroidStudio3.x" in home directory and the "android-studio" in /usr/local or /opt directory, then download the zip file of latest version of android studio and move the "android-studio" folder to /usr/local or /opt. Now run the /android-studio/bin/studio.sh and import the settings,Now Latest version will be installed.
I got this error when I was trying to upgrade Android Studio using a different user account to the account that installed Android Studio (the account had admin privileges). When I switched to the account which installed Android Studio I was able to upgrade without this problem happening.
I have had a similar issue and solved it. Some documents were encrypted by the software installed on my PC, so updating to Android Studio 3.6 was not possible (in fact every update I have the same issue).
To solve it, just find those files in the Android Studio installation folder (probably Program Files/Android) and decrypt it. After that, you should be good to go. I hope it helps!

Resources