java.lang.UnsupportedClassVersionError in Google App Engine - google-app-engine

I'm running windows 7 and juno. Jdk 1.7, gwt 2.4, app engine 1.7.
I did the stockwatcher tutorial here and everything worked great. I then deployed it to app engine. Everything still worked great!
However, I then did the RPC part of the tutorial here. When I ran locally, I got a java.lang.VerifyError that I fixed by following this thread (putting -XX:-UseSplitVerifier in default VM arguments). It then worked locally and I deployed to app engine.
In app engine, I get a java.lang.UpsupportedClassVersionError. I found two threads that seem to have the same problem, here and here. I'm using a fresh install of windows 7 and the only jdk I downloaded was 1.7. Looking through eclipse, I see jre7, jdk 1.7, and app engine 1.7.
I read somewhere that app engine doesn't work with 1.7. However the app engine sdk version on the downloads page is 1.7 (I think that might be super recent) but I don't really know if those things are related. I went ahead and downloaded java 6 and app engine sdk 1.6.6, added jre6 to the installed jres, set the compiler compliance level to 1.6, changed it in my project too for good measure, and changed the default app engine sdk to 1.6.6.
Now I'm getting the error, "Java compiler level does not match the version of the installed java project facet." I googled the problem and everyone says to right click the project and change the facet, but I can't seem to find that option. I also have no idea if I'm going about this the right way. I'd much rather use the most recent versions of everything if possible. I also don't understand why app engine worked the first time with no RPC, but broke with the RPC.
Any help would be greatly appreciated!!! THANK YOU!!!

GAE does not currently support java 1.7, only 1.5 and 1.6 are supported. See the java docs for more information.
The relevant paragraph is the following:
App Engine runs Java applications using the Java 6 virtual machine (JVM). The App Engine SDK supports Java 5 and later, and the Java 6 JVM can use classes compiled with any version of the Java compiler up to Java 6.
The version of the GAE sdk you downloaded (1.7) isn't related in any way with the java version.

GAE is a sandbox environment. Currently it supports only Java 6. But to solve your problem, if you can downgrade your compile version to Java 6, you should be able to take advantage of GAE.
But if you want a standalone server environment without any restrictions, check other cloud platforms like heroku or cloudbee

Possibilities are
you don't have right JDK or
GAE you using that does not support 1.7
Open below file under .settings (use Navigator window) and change java project facet to 1.6
org.eclipse.wst.common.project.facet.core.xml
After change you must close and restart the eclipse.

Currently ,... java 7 already supported
Warning: In a future release, support for Java 6 will be removed, so it is a good idea to start migrating to Java 7 now. If you've been using Java 6 and are interested in learning about possible issues migrating to Java 7, this white paper may be helpful.
from : https://developers.google.com/appengine/docs/java/overview

Related

Google Eclipse Plugin is Gone?

This morning, I tried to get a coop student up and running on an older version of the Google App Engine for Eclipse plugin.
The following website and all related links appear to have been wiped off the face of the earth:
https://developers.google.com/eclipse/
Is this just down at the moment?
Is it possible to get older versions of the plugin?
While it is correct that the Google Plugin for Eclipse has been removed from Google's documentation, it is still available.
To install it, in Eclipse Neon, click "Install new Software" and add in this URL.
http://dl.google.com/eclipse/plugin/4.6
Next, click through the dialogues to allow the installation, and restart Eclipse.
While Google has chosen to stop supporting this, I personally feel that the new Cloud Tools for Eclipse plugin is just not ready. Also, in the early days, JDO was what many people were using on top of the data layer, and since GAE has been around for 10+ years, many of us have a lot of infrastructure built on top of this that is costly to change. While it's still possible, in theory, to run the DataNucleus enhancer manually, it's a huge pain that requires in-depth knowledge of the inner workings of GAE and DataNucleus and knowledge of which dependencies go together. It may have been well-documented in the past, but today it is not.
But be warned, one of our engineers recently lost the ability to deploy the project to Google App Engine using the GPE and was forced to use the gcloud tool, which doesn't seem to have sensible defaults, like deploying to a non-default version and instead will deploy straight to default, well, by default. So we're writing a script around that command that will pass in --no-promote so it doesn't immediately start migrating traffic... Visit the gcloud reference for app deploy for more details. Good luck!
For more information on the install process, please see How to install Google Plugin for Eclipse on mkyong.com.
GPE is indeed gone. It was not up to date and many parts of it no longer functioned. Over the coming year, even more core functionality was going to break. We wouldn't be doing anyone any favors by letting them invest their time in a broken tool. This is doubly true for new users such as your students. There are some old GPE snapshots floating around here and there, but those don't really work with GCP in 2018.
That official documentation is most likely gone for good, the plugin was deprecated in favour of the Google Cloud Tools for Eclipse. From Migrating from the Google Plugin for Eclipse:
The Google Plugin for Eclipse is deprecated and will not be supported
beyond Eclipse 4.6 (Neon). It will be removed in early 2018.
This document describes how to migrate a project that uses the Google
Plugin for Eclipse to the supported tooling.
You can check the snapshots of the docs on the Wayback Machine, and maybe still find the matching code repositories, if they haven't been removed as well.
But it's probably a good idea to switch to the supported tools sooner than later, especially since they're just getting started.
Related: Migrating GAE project to Java 8 - get XML validation error after adding runtime property to appengine-web.xml

scikit Learn with Google app engine

I am currently working on a data science project using python 2.7 framework which uses few modules like numpy,flask,pandas and have successfully deployed the application to Google cloud using app engine. I am now planning to use scikit-learn ML framework and my concern if it is compatible with google app engine?. I have seen some past forums where they mentioned sci-kit learn is not supported on App Engine. Wanted to check if this is still the case. Appreciate your input's here
You're referring to the Pure Python limitation in the Python standard environment sandbox.
One possible solution is using the GAE Python flexible environment, which doesn't have such limitation. While fundamentally it uses Google Compute Engine (GCE) VMs underneath it still retains some of the GAE convenience features which you'd need to handle yourself if going straight with a GCE solution.
See the Choosing an App Engine Environment guide.
It looks like sci-kit learn is not supported on App Engine, and the using managed VMs is the preferred solution. See the resolution of this bug.
Also see this similar question for another alternative approach.
I suggest you check out Google Compute Engine or Google container Engine.
2.7 Standard only allows you to import whitelisted/proprietary modules (listed in the Docs), whereas the Flex Environment supports all Python modules.
The new 2nd Generation Python 3.7 Standard Environment supports using all modules as well as many other features that 2.7 Standard doesn't.

Xamarin.Forms iOS app crashes in ListView after update to Xamarin.Forms 2.3.4.231

The app is a Xamarin.Forms PCL app running version 2.3.4.231 after an upgrade from Xamarin.Forms v2.2.0.31. The app works just fine on my iPhone 6s running version 10.2.1, however the app crashes on the ListView page when running on my iPad Mini 2 running version 7.1.2. More importantly, neither Xamarin Insights or HockeyApp catches the error.
The app worked just fine with the old version of Xamarin.Forms when both Windows 10 and my Mac Book was running this version of the software. https://releases.xamarin.com/stable-release-cycle-6-service-release-4/
I just upgraded both Windows 10 and my Mac Book to this version of the software. https://developer.xamarin.com/releases/vs/xamarin.vs_4/xamarin.vs_4.4/
I'm now getting this error in the iOS properties section.
It might be important to note that I'm using this in the ListView page. Both packages are installed in the Portable and iOS Projects.
Xamarin.FFImageLoading v2.0.5
Xamarin.FFImageLoading.Forms v2.0.5
I'm just assuming this has something to do with ListView, but I have no idea other than this is where the app is crashing. Any help is much appreciated. Let me know if you need to see some code.
iOS 7 and 8 are no longer supported according to this link. https://github.com/xamarin/Xamarin.Forms/pull/630
If you are using the latest version of Xamarin.Forms 2.3.4 or newer, versions older than iOS 7 are no longer supported. You can see the official documentation here, under "Other Changes"
https://releases.xamarin.com/stable-release-xamarin-forms-2-3-4-224/
It does appear iOS 8 and newer are still supported however.

Python 3 for Google App Engine

I've started an App Engine Project with Python 2.7 but had already be used to working on Python 3.
Does anyone know if there are any plans for Google's App Engine to work with Python 3?
App Engine's new (and currently beta) Flexible environment supports Python 3.4.
On August 10, 2016, Google Cloud Platform Blog announced that Python 3 was in beta on Google App Engine:
Developers running Python on Google App Engine have long asked for support for Python 3 and third-party Python packages. Today we're excited to announce the beta release of the Python runtime on App Engine Flexible Environment with support for Python 3.4 and 2.7. You can now develop applications in the Python version you prefer and create performant mobile and web backends using the frameworks and libraries of your choice. Meanwhile, developers benefit from App Engine's built-in services, such as autoscaling, load balancing, microservices support and traffic splitting and hence can focus on their code and not worry about infrastructure maintenance.
Yes there are plans, see
https://code.google.com/p/googleappengine/issues/detail?id=909
(well, it's not really a concrete plan, but its an open issue and Google has acknowledged it's existance)
However, because Python 2.7.x and Python 3.x are quite similar, the priority to implement Python 3.x support from Google's perspective isn't very high. It's likely a massive amount of work to support it, and it isn't really a critical issue. Don't expect Python 3.x to be supported anytime soon.

How to get google app engine java integration in intellij idea, community edition?

This page https://www.jetbrains.com/idea/features/google_app_engine.html suggests that I can easily create new projects with google-app-engine java support. It comes up in my google search about this topic, with the idea community edition. however, my "new project" dialogue does not look like that: https://www.dropbox.com/s/soof8k29cl1fb9r/Screenshot%20from%202014-12-04%2022%3A15%3A18.png?dl=0
So I suspect this is just a feature in the intellij idea ultimate edition. But then I would expect to be able to download the plugin for the google-app-engine integration somewhere, right? Where would that be? I was only able to find a really old plugin (version 1.1.2) while the recent one is 1.1.4, I am told.
IntelliJ Community Edition is not meant for web development, hence it is only supported in the Ultimate Edition:
The plugin is bundled with IDEA Ultimate Edition since version 9.
Source/Plugin

Resources