I read that CodenNameOne plugin will work only with Java 8 on 3.5 version.
My project is a big project with code writen in Java 5 with several components customized by myself. It is a mix of Native-App with Web-App
(WebComponet + JavaScript Bridge + AngularJS, and so on).
Is there risk of breaking my code?
What I need to do to make a smooth transition to Java 8.
With the last version of plugin (3.4) can I write my code in Java8 at this moment?
When we say it will only work with Java 8 we mean as the underlying VM of the IDE and SDK. You don't need to activate the Java 8 functionality for your application if you don't want to.
You can use 3.4 and 3.3 targets with Java 8 support enabled.
If you do want to make use of Java 8 features do the steps outlined here:
Add the java.version=8 build hint
Make sure the IDE and the project use Java 8
In the build.xml replace usage of 1.5 with 1.8
Related
I'm new in the world of APP(mobile applications). I want to create a APP using react native. But it is necessary that it works out in several versions of android (6 onwards).
Now I am working on no expo way and on windows 10 too. So, I installed react native that now it works with android 9 (PIE) API LVL 28 AVD. If I finish my project with this API, would the apk work on different old versions of Android? or only in phones which have API 9. Give me advices pleases.
if i development my project with react native 0.61.5 version (the last i think 18/02/2020), would i run old APIs of android (6 onwards i want)?. Or, do i need to put my react native version on an old version to development an APP on android 6 to run on several versions?. Or the only thing that i need to do is write a sentence in my code that cover some plataforms.
PD: I'm new in this web page too.
You want to set your minSDK in the Android project. To do so, open up your build.gradle in the Android portion of your project and then change minSDK to whatever version you need. IIRC React Native supports all the way back to API 19 and Android 6 is API 21. If it's already low enough, no need to change it. That being said, I'd still recommend testing on multiple phones.
If I understand your question #abdiaslabrador, you want your app to be available to users still on android version 5.1 to 8.1 and to do that you have to select an Android API level lower than level 29 which targets only android phones running Android10. For your case, that'd be android API level 22 which enables you target android version 5.1 (lollipop) and above. Check out the official android build numbers page for more clarification
I am trying to use code name one new GUI designer tool.
Version - Codename one GUI builder 3.7.3
Eclipse - Used Oxygen and Mars both.
Java - tried 7 and 8 both.
My problem is i cannot add any containers or any component to the design area. Once i add one it suddenly disappear. ( Simply cannot create any UI)
I cannot change the layout even.Always it shows Layered layout and cannot change.
I have created a java 7 as well as java 8 code name projects but nothing works.
I followed - https://www.codenameone.com/blog/using-the-new-gui-builder.html
According to tutorial
Figure 14. The features of the main toolbar
In my editor i don't see 'Component tree icon'.
Also i cannot generate codes such as
//-- DON'T EDIT BELOW THIS LINE!!!
private void initGuiBuilderComponents(com.codename1.ui.util.Resources resourceObjectInstance) {
}
//-- DON'T EDIT ABOVE THIS LINE!!!
}
Do i miss anything ?
We don't support Java 7 so make sure your JDK is a Java 8 JDK and the one eclipse is running on top is a Java 8+ JDK.
Make sure you created the GUI component under a package and didn't refactor it after the fact. You can also read about debugging and tracking issues in the designer/gui builder in this article.
I'm developing on an application that wasn't built using sencha command. Right now we are using extjs 4.2, but we need to upgrade it to extjs 5 or 6. Preferebly extjs 6. Furthermore, our application does not follow the structure of MVC.
Is it possible to convert the application so it uses sencha cmd somehow, when it wasn't created using sencha command?
If not, what will be the easiest and most comprehensive way to upgrade to extjs 5 or 6? I have tried this approach: How to upgarde my Extjs application from 4 to 6?
but after some fight, I am still not able to make it work.
extjs 4 uses ext-all.css. Is there a way to get the semilar file in extjs 6, that I just can't find?
Has any of you succeeded in upgrading to extjs 6 without using sencha command? Our application is pretty big, so deleting everything and start a new application as a solution, is not an option
Thanks for any help you can provide
I would recommend to use Cmd, as this will reduce your application's footprint. I would recommend to upgrade to the latest framework version available, since the amount of work required should be the same whether you switch from 4.2 to 5 or from 5 to 6 or directly from 4.2 to 6.2, and one less of these "full upgrades" mean less testing and less overall work.
I cannot answer question 4, because we did already use Cmd with ExtJS 4.2, but the other ones as follows:
To convert your existing app into a Cmd application, you would create a new application with Cmd (going by the same name, located in a different directory) first, and then move over all the old code into the new application directory. Cmd doesn't care whether you follow MVC structure or not, as long as file names and component names match (MyApp.someName.someOtherName.SomeComponent should be defined in app\someName\someOtherName\SomeComponent.js).
Please note that upgrade of big applications from 4.2. to 6 takes months, not hours, because there are so many API changes forcing you to change your code and test and change and test. You could fill a book with all loopholes I encountered when I upgraded our application. The upgrade was really a good thing, though - I came across nearly all code from back then when I didn't know shit about ExtJS, and while I was debugging, I made major refactoring and code improvements (including full switch from CSS to SASS).
If you choose not to use Cmd, precompiled stylesheets are in build\classic\theme-<yourtheme>\resources folders.
Starting with Xcode 4.5 the possibility of building for armv6 devices is not given anymore (iPhone/iPod touch 1st and 2nd generation). This means no new versions of our app for iPhone 2G and 3G which is very unlucky. Does anyone know if there will be a workaround? I really don´t see any technical reasons for this.
You can have multiple versions of xcode installed. In the past, that has been the fix needing to use an older xcode feature.
It is a workaround, and the project files may eventually evolve in a way that no longer supports the older tools, but for the time being, that will allow you to build for older targets.
If you have a single project that you want to work with in both versions of XCode, then you may end up having to manage separate project control files via source control tricks and/or file shuffling.
I would also recommend that project structure changes and binary file management (e.g. Core Data models) happen via the old version, as XCode 4.5 will be backward compatible, but forward compat is rarely assured.
There's another solution I found in chpwn blog: Building for armv6 in Xcode 4.5.
This allows you to work with Xcode 4.5 but compile using 5.1 SDK.
The downside: you can’t use the iOS 6 SDK when using this trick, and you can’t build for armv7s.
Yes, there are workarounds. If you need to actually take advantage of new iOS 6 features, try either of the first couple answers to this related question. The first answer requires using both Xcode 4.4 and 4.5. If you never want to have to open Xcode 4.4, then use the second answer.
If you just want to be able to build an executable in Xcode 4.5 that works on armv6, armv7 and armv7s devices, without actually taking advantage of new iOS 6 SDK APIs, then you can see my answer to another question, which is much simpler ... but has the limitation that you can't take advantage of new iOS 6 features on iOS 6 devices.
You can add the string "armv6 armv7" as architecture. Do not select a predefined setting.
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