Which eclipse package to use with google app engine? - java

I am going to develop on Google app engine platform in java and I don't know which eclipse download package I should get.
I don't know if the plugin supplied by Google has everything required and the classic package will sufice or if one could get some advantage downloading one of standard java packages.
Thanks in advance.

The plugin provided by Google Eclipse at https://developers.google.com/eclipse/ has everything that you need to develop GAE applications.
I am not sure what you are referring to as the classic package but if it is Eclipse Classic that you are talking about then it will suffice.
Few other points:
Make sure that you download the correct plugin version for the Eclipse version that you are using. Go to https://developers.google.com/eclipse/docs/download and use the version that matches your installed Eclipse version.
When you begin the process of installing the plugin, you will see a screenshot like https://developers.google.com/eclipse/docs/install-eclipse-4.2 where you will be given the option of what components to install. You can see that one of them is required but the rest are optional. I suggest that you go with selecting atleast the SDKs component.
All the best.

I developed some applications that uses google app engine and from my experience the eclipse plugin that google provides is sufficien but you need to install all the components of it.

Related

Proper maven dependency for my stable python library from github into main java web app build

I have a Vaadin Java web app build in eclipse. I also have a python library managed separately which I now integrate into my java web app. This works using a folder for python code within my web app code.
Now: I want to properly manage my python code separately from my github with versions and want to build the Java web app including a specific version of this python code (i.e. stable release) to continue working on the python code toward the next stable release without interference with the web app (just standard version control of a main app and a separate library I control and develop).
My experience so far is to include third-party dependencies for my Java web app but none are my own. I now want to use this same method for my own separate libraries.
Q: What is the proper way to express a Maven dependency in my Java Web app build with my Python code sitting on Github so that I do not need to manually include the python code within my web app repo?
If this has been answered, please point me to the best post, many thanks!
EDIT:
Following the comments received, it looks like my assumption to use Maven for solving the separate versioning of a set of files in my Java app is not the way to go. I am therefore opting to make my Java app project depend on the Python project in Eclipse where I can ensure to checkout only the stable version of the Python files to affect the Java build accordingly.
If this makes sense, we can close this question, many thanks for the comments and assistance.

Can I use a Java library in an iOS app using Cordova?

I would like to use the Ionic or other cross-platform framework to build a mobile app. In this app I would like to use a Java library. From what I understand, I can use this Java library in my hybrid app if I write a Cordova wrapper for the library. But I have not been able to find a way to use the Java library on iOS. Is this possible?
You can't, iOS apps don't understand Java, even if you write a Cordova plugin. Is there no iOS alternative of the library you want to use?
Using Cordova you could build a plugin that uses the library you want to use on Android and use a different library on iOS. In your Ionic app, if the plugin is well written, you will be able to call the same function and the plugin will handle the rest.
Regarding this:
I've found that in android once you wirte a Cordova wrapper for the
library it can be used within the app even though I don't really
understand what it really means.
Cordova allows you to call native functions using JavaScript, so without Cordova you won't be able to use the Java library, but by building a plugin using Cordova you can. Here is a tutorial on how to create a Cordova plugin and here is another. I also recommend looking at existing Cordova plugins to see how it is done. If you share the library, we may also be able to help you create the plugin.
You can use Java code if you use Codename One's Cordova compatibility for portability.
Notice you can't use a binary jar "as is" but you can use Java source code which will work natively on iOS.

Automatically migrate traffic to newest google app engine version

We are trying to automatically migrate traffic to the latest built version of our production branch of our app in google app engine. I can't find a good resource after about an hour of investigation on how to do this. Does anyone know if this is possible and where I can find resources on how to do this?
If you change the app/module version in your web.xml file at every build then you need to either assign the new version as the default version or migrate the traffic to the new version. AFAIK both of these actions can only be done manually, from the Developer Console's Versions Page.
But if you don't change the app/module version in your web.xml file then the updated code should automatically receive the same traffic as the previous code simply by deployment. At least in the standard GAE environment.
For Python applications it's possible to use appcfg.py set_default_version <app-directory> to set the default version to the one specified in app,yaml.
I'm assuming that appcfg.sh set_default_version <app-directory>, described in the documentation, does the same thing for Java applications.

I've added a Jar to my IDE classpath on Codename One and now my cloud builds fail

I added a JAR for JSON parsing to my NetBeans classpath when building my application. Everything worked great in the simulator but I got a build error from the build servers as I try to build the native app.
How can I parse JSON or use arbitrary JAR's in Codename One?
Codename One has builtin support for JSON in the JSONParser class.
However, the bigger question at hand is changing the classpath which Codename One doesn't allow since the native JAR might not work on the mobile device. This is explained in this post which is a bit old but the basic reasoning is:
An arbitrary JAR might use an API that isn't supported by Codename One.
An arbitrary JAR might be compiled with a compiler that generates bytecodes that are untested with the build servers (e.g. in the past Eclipse ADT had some issues with the old VM).
Codename One's build process doesn't know the JAR is there and doesn't send it to the servers.
The most common case is using native libraries and JAR's don't have builtin support for native code on mobile devices.
To solve these issues Codename One has a cn1lib file format and a list of available cn1lib libraries. You use them by placing a cn1lib in the lib directory and pressing "Refresh Libs" in the context menu.
cn1libs support native code, hints on code completion and will work for native builds "as is". Steve did a thorough tutorial on porting the native iOS/Android Freshdesk SDK to Codename One here.

Which eclipse is the best fit for Android development ?

I'm using NetBeans for J2ME development. Now I want to switch to develop for Android.
When I search I found that people are being used Eclipse to develop on android. When I tried to download eclipse I have found many different eclipse packages (Classic, Indigo).
I just want to know the difference between them and which is the best to develop on Android?
Classic is just Indigo with classic plugin set (Eclipse Platform, Java Development Tools, and Plug-in Development Environment).
Every package downloadable directly from eclipse page is Indigo unless you go to 'older versions' section.
Any package will work for you, but 'd go for 'eclipse for java developers' to reduce download size.

Categories