Warning major version 52 is newer than 51, the highest major version supported by this compiler
Solution 1
I was having the same issue, and tearing my hair out. I had the JDK Version 8 installed, but these warnings wouldn't go away, and eventually they generated a build-breaking error.
When I went to Tools -> Options -> Xamarin, and looked at the Android Settings, the Java Development Kit Location was pointing to jdk.1.7.xxxx, in Program Files (x86)
.
I changed it to 1.8.0_101, in Program Files
. Then I restarted Visual Studio, and the same error happened again. Somehow, Visual Studio was detecting Version 7 of the JDK and pointing it to that automatically.
So the solution turned out to be very simple. As well as installing Version 8 of the JDK, UNINSTALL Version 7 of the JDK. As soon as I did that, Xamarin turned out to be much better behaved. This step solved a whole bunch of seemingly unrelated problems.
Solution 2
That error is telling you that the Java Class version that is being loaded was compiled with Java 8 (52) but Java 7 (51) is trying to load that compiled class.
Java 7 uses major version 51
Java 8 uses major version 52
Check which Java version(s) are installed on your machine and review Xamarin's requirements and Java installation steps (linked below)
Solution 3
For people having problems with setting the appropriate JDK version, you might want to try to override this setting in the vs2015 options dialog:
Solution 4
Delete bin folder and obj folder and run the project it will be work fine
Solution 5
You have a bad proguard.jar file, you need to replace this .jar by a correct version. The steps below describing how to do that. Some colleagues had the same problem here.
- Go to Preferences => SDK locations and copy the Android SDK location.
- Go to that folder (mostly /Users/USERNAME/Library/Developer/Xamarin/android-sdk-macosx) and go to the folder tools/proguard/lib.
- Here you find a proguard.jar.
- Rename this to proguard_OLD.jar.
- Download the last proguard file (like this one https://sourceforge.net/projects/proguard/files/)
- Unzip and place the proguard.jar in the tools/proguard/lib folder
- Rebuild your Project
Everything should be fixed!
You can find more info about the bug here:
Related videos on Youtube
T.Gelev
Updated on January 19, 2020Comments
-
T.Gelev over 4 years
Basicly I'm super newbie and started internship in IT company. I installed VS with Xamarin. The problem that I'm facing is very frustrating. So even when i create empty project I can't compile it and get error like this :
Severity Code Description Project File Line Suppression State Warning major version 52 is newer than 51, the highest major version supported by this compiler.
I searched all over google and asked so many people and still no fix of my problem. If anybody can help me via skype or teamwiever i will APPRECIATE so much. My skype: toniterdal , feel free to add me.
-
Robin Bruneel over 7 yearsThis is a corrupt proguard.jar file watch the solution here stackoverflow.com/a/41442038/3970581
-
-
Adrian Grigore over 7 yearsThis workd for me as well, but only after I also cleaned my solution.
-
Ranjithkumar over 7 yearsworked great.. Save from big headache. can you share few lines about this answer (If possible)..
-
Stefan over 7 yearsActually I spend several hours "trail and error" various settings. When I stumbled upon this one, all seemed to work out but I haven't done a in depth analysis. But it seems that the setting for the C++ cross platform settings interfere with the Xamarin ones
-
Alexander over 7 yearsThanks - cleaning the solution also removed the "missing v7..." error.
-
Jahmic over 7 yearsMaybe obvious, but you may have to install the latest JDK from Oracle.