Class file has wrong version 52.0, should be 50.0

2019-01-19 12:19发布

I'm trying to compile my project in IntelliJ idea. I'm using a class in an external jar file and on compilation receiving the above error.

I understand that it's saying the jar file was compiled with a newer Java version than that which IntelliJ is using. My question is how do I make them compatible? I have updated the Java on my Mac to 1.8 and when I run java -version or javac -version it confirms this.

What am I missing? (Apart from Java development experience)

5条回答
Explosion°爆炸
2楼-- · 2019-01-19 12:29

Select "File" -> "Project Structure".

Under "Project Settings" select "Project"

From there you can select the "Project SDK".

查看更多
何必那么认真
3楼-- · 2019-01-19 12:31

In your IntelliJ idea find tools.jar replace it with tools.jar from yout JDK8

查看更多
等我变得足够好
4楼-- · 2019-01-19 12:42

i faced the same problem "Class file has wrong version 52.0, should be 50.0" when running java through ant... all i did was add fork="true" wherever i used the javac task and it worked...

查看更多
Bombasti
5楼-- · 2019-01-19 12:44

Have got the same error as in header because of failed attempt to compile my project with java 8 and then reattempting to compile with java 6. Some classes where compiled at the first attempt with 8 and did not recompile with 6. Mixed classes did not compile then. Cleaning project solved the problem. This answer is not strictly relevant to the question, but could be useful for someone.

查看更多
淡お忘
6楼-- · 2019-01-19 12:46

It means your Java runtime version is 1.8, but your compiler version (javac) is 1.6. To simply solve it, just retreat the Java version from 1.8 to 1.6.

But if you don't want to change the Java runtime version, then do the following steps:

  1. JAVA_HOME= "your jdk v1.8 folder path", to make sure jdk is also v1.8 and use java -version and javac -version again to ensure it
  2. Make sure IntelliJ 's compiler mode is set to compliant with v1.6 But i have tried that. it didn't solve my problem.
查看更多
登录 后发表回答