Skip to content
This repository has been archived by the owner on Sep 17, 2022. It is now read-only.

java.lang.IllegalArgumentException: Class file is Java 8 but max supported is Java 7 #87

Open
adiantek opened this issue May 1, 2017 · 4 comments

Comments

@adiantek
Copy link

adiantek commented May 1, 2017

Is there any way to fix it without downgrade to Java 7?

Unable to update:
java.lang.IllegalArgumentException: Class file is Java 8 but max supported is Java 7: myclassfile
at com.google.appengine.tools.admin.Application.checkJavaVersion(Application.java:1378)
at com.google.appengine.tools.admin.Application.checkJavaClassVersion(Application.java:1347)
at com.google.appengine.tools.admin.Application.checkJavaVersion(Application.java:1329)
at com.google.appengine.tools.admin.Application.copyOrLinkFile(Application.java:1256)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1235)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1224)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1224)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1224)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1224)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1224)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1222)
at com.google.appengine.tools.admin.Application.populateStagingDirectory(Application.java:756)
at com.google.appengine.tools.admin.Application.createStagingDirectory(Application.java:708)
at com.google.appengine.tools.admin.AppAdminImpl.doUpdate(AppAdminImpl.java:570)
at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:57)
at com.google.appengine.tools.admin.AppCfg$UpdateAction.execute(AppCfg.java:1490)
at com.google.appengine.tools.admin.AppCfg.executeAction(AppCfg.java:357)
at com.google.appengine.tools.admin.AppCfg.(AppCfg.java:218)
at com.google.appengine.tools.admin.AppCfg.(AppCfg.java:119)
at com.google.appengine.tools.admin.AppCfg.main(AppCfg.java:115)
com.google.appengine.tools.admin.AdminException: Unable to update app: Class file is Java 8 but max supported is Java 7: myclassfile
at com.google.appengine.tools.admin.AppAdminImpl.doUpdate(AppAdminImpl.java:578)
at com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:57)
at com.google.appengine.tools.admin.AppCfg$UpdateAction.execute(AppCfg.java:1490)
at com.google.appengine.tools.admin.AppCfg.executeAction(AppCfg.java:357)
at com.google.appengine.tools.admin.AppCfg.(AppCfg.java:218)
at com.google.appengine.tools.admin.AppCfg.(AppCfg.java:119)
at com.google.appengine.tools.admin.AppCfg.main(AppCfg.java:115)
Caused by: java.lang.IllegalArgumentException: Class file is Java 8 but max supported is Java 7: myclassfile
at com.google.appengine.tools.admin.Application.checkJavaVersion(Application.java:1378)
at com.google.appengine.tools.admin.Application.checkJavaClassVersion(Application.java:1347)
at com.google.appengine.tools.admin.Application.checkJavaVersion(Application.java:1329)
at com.google.appengine.tools.admin.Application.copyOrLinkFile(Application.java:1256)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1235)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1224)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1224)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1224)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1224)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1224)
at com.google.appengine.tools.admin.Application.copyOrLink(Application.java:1222)
at com.google.appengine.tools.admin.Application.populateStagingDirectory(Application.java:756)
at com.google.appengine.tools.admin.Application.createStagingDirectory(Application.java:708)
at com.google.appengine.tools.admin.AppAdminImpl.doUpdate(AppAdminImpl.java:570)
... 6 more

And from maven:
[INFO] GCLOUD: Reading application configuration data...
[INFO] GCLOUD:
[INFO] GCLOUD:
[INFO] GCLOUD: Beginning interaction for module default...
[INFO] GCLOUD: Unable to stage app: Class file is Java 8 but max supported is Java 7: myapp/DemoServlet.class in /home/xxx/src/xxx/target/appengine-try-java-1.0/WEB-INF/lib/appengine-try-java-1.0.jar

@patflynn
Copy link
Contributor

patflynn commented May 1, 2017

java 8 is not available in App Engine Standard at the moment. There is an alpha which you could try signing up to.

Otherwise you'll have to wait for the public Beta.

@loosebazooka
Copy link
Contributor

loosebazooka commented May 1, 2017

In gradle you should be able to set the target version of your module to java7 so it creates java7 output.

see sourceCompatability and targetCompatability in https://docs.gradle.org/current/userguide/java_plugin.html

@adiantek
Copy link
Author

adiantek commented May 1, 2017

@loosebazooka I wrote: "without downgrade to Java 7". Thanks @patflynn, I will fill it tomorrow.

@loosebazooka
Copy link
Contributor

Oh whoops, sometimes people have the same problem because they want to build with java8.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants