Apple M1 Support

Q&A regarding installation and issues getting started with Servoy

Apple M1 Support

Postby swingman » Sat Nov 28, 2020 1:04 pm

Hi,

I know Servoy are on working their own on fixes and awaiting open-source fixes relating to Mac OS X Big Sur.

What about support for the Apple M1?

My systems are on the following versions:

Servoy 8.2 (Smart Client)
Servoy 2019.12 (NG Client)
Servoy 2020.03 LTS (NG Client)
Servoy 2020.09 (NG Client)

What versions are likely to get updates?
If 2020.03 is line for an update, I will move the older systems to that version.

Thanks,
Christian Batchelor
Certified Servoy Developer
Batchelor Associates Ltd, London, UK
http://www.batchelorassociates.co.uk

http://www.postgresql.org - The world's most advanced open source database.
User avatar
swingman
 
Posts: 1472
Joined: Wed Oct 01, 2003 10:20 am
Location: London

Re: Apple M1 Support

Postby ROCLASI » Sat Nov 28, 2020 6:05 pm

Hi Christian,

I though the issue(s) were only with Eclipse. Not with tomcat/servoy server/servoy clents.
Unless I misread.
Robert Ivens
SAN Developer / Servoy Valued Professional / Servoy Certified Developer

ROCLASI Software Solutions / JBS Group, Partner
Mastodon: @roclasi
--
ServoyForge - Building Open Source Software.
PostgreSQL - The world's most advanced open source database.
User avatar
ROCLASI
Servoy Expert
 
Posts: 5438
Joined: Thu Oct 02, 2003 9:49 am
Location: Netherlands/Belgium

Re: Apple M1 Support

Postby jcompagner » Sat Nov 28, 2020 6:37 pm

https://stackoverflow.com/questions/647 ... le-m1-chip

So if you really can install java then i guess it should work. Did any one try that?
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8828
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: Apple M1 Support

Postby ROCLASI » Sat Nov 28, 2020 6:42 pm

Yeah, I saw that Azul had Apple M1 installers.
https://www.azul.com/downloads/zulu-com ... ackage=jdk
However I have no system to try it on.
Robert Ivens
SAN Developer / Servoy Valued Professional / Servoy Certified Developer

ROCLASI Software Solutions / JBS Group, Partner
Mastodon: @roclasi
--
ServoyForge - Building Open Source Software.
PostgreSQL - The world's most advanced open source database.
User avatar
ROCLASI
Servoy Expert
 
Posts: 5438
Joined: Thu Oct 02, 2003 9:49 am
Location: Netherlands/Belgium

Re: Apple M1 Support

Postby jcompagner » Sat Nov 28, 2020 7:44 pm

right and after that for developer support we need Eclipse to have a build for that (SWT is native)

But running tomcat/server should be doable earlier when a full Java VM is there. But thats i guess not what you will run on it...
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8828
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: Apple M1 Support

Postby swingman » Sat Nov 28, 2020 8:45 pm

I have i9 and M1 MacBook Pros side by side on my desk.

NG-Client is not an issue. My 8.2 Smart Client appears to run fine, possibly ever so little slower because of Java running on Rosetta 2. But it is useable.
Azul Java 8 installs fine, but does not seem to have Java web start.

I'm more concerned about updates to Servoy developer to take advantage of M1's speed and any issues relating to Mac OS X Big Sur.

I have run some developers for a few minutes under Rosetta 2:
Developer 2020.09 appears to work acceptably, I can launch NG client which performs more or less as normal.
Developer 2020.03.1 crashes loading my project (this may be due to my earlier having tried to start without having a database running)
Developer 2019.12 Can't test because I need a VPN running.
Developer 8.2 becomes unresponsive after loading my project
Christian Batchelor
Certified Servoy Developer
Batchelor Associates Ltd, London, UK
http://www.batchelorassociates.co.uk

http://www.postgresql.org - The world's most advanced open source database.
User avatar
swingman
 
Posts: 1472
Joined: Wed Oct 01, 2003 10:20 am
Location: London

Re: Apple M1 Support

Postby ROCLASI » Sun Nov 29, 2020 12:28 pm

Hi Christian,

swingman wrote:Azul Java 8 installs fine, but does not seem to have Java web start.

Have you tried Azul IcedTea-Web? This is supposed to be a Java webstart implementation.
It's available on that same download page.
Robert Ivens
SAN Developer / Servoy Valued Professional / Servoy Certified Developer

ROCLASI Software Solutions / JBS Group, Partner
Mastodon: @roclasi
--
ServoyForge - Building Open Source Software.
PostgreSQL - The world's most advanced open source database.
User avatar
ROCLASI
Servoy Expert
 
Posts: 5438
Joined: Thu Oct 02, 2003 9:49 am
Location: Netherlands/Belgium

Re: Apple M1 Support

Postby swingman » Sun Nov 29, 2020 11:25 pm

Hi Robert,

Getting the old Smart Client to run fully native on M1 is a bit of a distraction as it appears to run fine under Rosetta2.

Anyway, I downloaded it and launched the jnlp, but it failed.
Code: Select all
bin % /bin/sh javaws.sh /Users/chrisb/Downloads/Servoy.jnlp
Warning! JAVA_HOME of /Library/Java/JavaVirtualMachines/zulu8.50.0.1013-ca-jdk8.0.275-macos_aarch64/zulu-8.jdk/Contents/Home/ in play!
warning, using portable itw from /Applications/icedtea-web-image: -Xbootclasspath/a:/Applications/icedtea-web-image/share/icedtea-web/javaws.jar:/Applications/icedtea-web-image/share/icedtea-web/plugin.jar:/Applications/icedtea-web-image/share/icedtea-web/jsobject.jar:/Applications/icedtea-web-image/linux-deps-runtime/tagsoup.jar:/Applications/icedtea-web-image/linux-deps-runtime/js.jar /Applications/icedtea-web-image/bin/javaws.sh /Applications/icedtea-web-image/share/icedtea-web/javaws_splash.png
IcedTea-Web 1.8.3-7
Using JRE version 1.8.0_275-b01 OpenJDK 64-Bit Server VM
Unable to use Firefox's proxy settings. Using "DIRECT" as proxy type.
Warning - your JRE - 1.8.0_275 - does not match requested JRE - 1.8

***

Codebase matches codebase manifest attribute, and application is signed. Continuing. See: http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/security/no_redeploy.html for details.
This application does not specify a Codebase in its manifest. Please verify with the applet's vendor. Continuing. See: http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/security/no_redeploy.html for details.

****

proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2020-11-29 21:04:30.875 java[74264:997452] CoreText note: Set a breakpoint on CTFontLogSystemFontNameRequest to debug.
2020-11-29 21:04:30.877 java[74264:997452] CoreText note: Client requested name ".SFNS-Bold", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2020-11-29 21:04:30.913 java[74264:997452] CoreText note: Client requested name ".SFNS-Regular", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
2020-11-29 21:04:30.914 java[74264:997452] CoreText note: Client requested name ".SFNS-Bold", it will get Times-Roman rather than the intended font. All system UI font access should be through proper APIs such as CTFontCreateUIFontForLanguage() or +[NSFont systemFontOfSize:].
Application title was not found in manifest. Check with application vendor
Codebase matches codebase manifest attribute, and application is signed. Continuing. See: http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/security/no_redeploy.html for details.
java.io.IOException: Cannot run program "xdg-desktop-icon": error=2, No such file or directory
   at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
   at net.sourceforge.jnlp.util.XDesktopEntry.installDesktopLauncher(XDesktopEntry.java:400)
   at net.sourceforge.jnlp.util.XDesktopEntry.createDesktopShortcuts(XDesktopEntry.java:330)
   at net.sourceforge.jnlp.runtime.ApplicationInstance.addMenuAndDesktopEntries(ApplicationInstance.java:244)
   at net.sourceforge.jnlp.runtime.ApplicationInstance.initialize(ApplicationInstance.java:148)
   at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:532)
   at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:945)
Caused by: java.io.IOException: error=2, No such file or directory
   at java.lang.UNIXProcess.forkAndExec(Native Method)
   at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
   at java.lang.ProcessImpl.start(ProcessImpl.java:134)
   at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
   ... 6 more

Starting application [com.servoy.j2db.smart.J2DBClient] ...
netx: Launch Error: Could not launch JNLP file. ( (class com.servoy.j2db.scripting.InstanceJavaMembers cannot access its superclass org.mozilla.javascript.JavaMembers))
net.sourceforge.jnlp.LaunchException: Fatal: Launch Error: Could not launch JNLP file. The application has not been initialized, for more information execute javaws/browser from the command line and send a bug report.
   at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:582)
   at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:945)
Caused by: java.lang.reflect.InvocationTargetException
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:498)
   at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:576)
   ... 1 more
Caused by: java.lang.IllegalAccessError: class com.servoy.j2db.scripting.InstanceJavaMembers cannot access its superclass org.mozilla.javascript.JavaMembers
   at java.lang.ClassLoader.defineClass1(Native Method)
   at java.lang.ClassLoader.defineClass(ClassLoader.java:757)
   at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
   at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
   at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
   at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
   at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
   at net.sourceforge.jnlp.runtime.JNLPClassLoader.access$1701(JNLPClassLoader.java:105)
   at net.sourceforge.jnlp.runtime.JNLPClassLoader$5.run(JNLPClassLoader.java:1748)
   at net.sourceforge.jnlp.runtime.JNLPClassLoader$5.run(JNLPClassLoader.java:1745)
   at java.security.AccessController.doPrivileged(Native Method)
   at net.sourceforge.jnlp.runtime.JNLPClassLoader.findClass(JNLPClassLoader.java:1744)
   at net.sourceforge.jnlp.runtime.JNLPClassLoader.loadClassExt(JNLPClassLoader.java:1781)
   at net.sourceforge.jnlp.runtime.JNLPClassLoader.loadClass(JNLPClassLoader.java:1581)
   at com.servoy.j2db.smart.J2DBClient.createFormManager(J2DBClient.java:1204)
   at com.servoy.j2db.ClientState.applicationSetup(ClientState.java:291)
   at com.servoy.j2db.smart.J2DBClient.applicationSetup(J2DBClient.java:1016)
   at com.servoy.j2db.smart.J2DBClient.startupApplication(J2DBClient.java:790)
   at com.servoy.j2db.smart.J2DBClient$4.run(J2DBClient.java:698)
   at com.servoy.j2db.smart.J2DBClient.mainImpl(J2DBClient.java:722)
   at com.servoy.j2db.smart.J2DBClient.main(J2DBClient.java:685)
   ... 6 more
Christian Batchelor
Certified Servoy Developer
Batchelor Associates Ltd, London, UK
http://www.batchelorassociates.co.uk

http://www.postgresql.org - The world's most advanced open source database.
User avatar
swingman
 
Posts: 1472
Joined: Wed Oct 01, 2003 10:20 am
Location: London

Re: Apple M1 Support

Postby sbutler » Tue Dec 01, 2020 5:11 pm

Looks like Eclipse team is working on it (for developer), but no ETA: https://bugs.eclipse.org/bugs/show_bug.cgi?id=565690
Scott Butler
iTech Professionals, Inc.
SAN Partner

Servoy Consulting & Development
Servoy University- Training Videos
Servoy Components- Plugins, Beans, and Web Components
Servoy Guy- Tips & Resources
ServoyForge- Open Source Components
User avatar
sbutler
Servoy Expert
 
Posts: 759
Joined: Sun Jan 08, 2006 7:15 am
Location: Cincinnati, OH

Re: Apple M1 Support

Postby rvanveen » Thu Jan 28, 2021 12:08 pm

Hi,

I did some testing, and currently on the Apple M1 java 15 isn't working.. when i install adoptOpenJDK11 on my and change the servoy.ini file to point to that java version (so not the default included one)
It will start and rosetta will handle it.. ok performance wise it can be better.. but it will work (i think with java for M1 in the feature it will be really fast)

Then i also tested the Azul build for the apple M1, but that still has some errors in combination with eclipse.. so that will not work yet.

Then there are some other issues.. like the default shipped postgres will also not work (for me), but when running a separated postgres (build for M1) or docker container it runs good.
User avatar
rvanveen
 
Posts: 16
Joined: Fri Jul 01, 2016 10:51 am

Re: Apple M1 Support

Postby swingman » Thu Jan 28, 2021 5:59 pm

Thanks for your testing and the update
Christian Batchelor
Certified Servoy Developer
Batchelor Associates Ltd, London, UK
http://www.batchelorassociates.co.uk

http://www.postgresql.org - The world's most advanced open source database.
User avatar
swingman
 
Posts: 1472
Joined: Wed Oct 01, 2003 10:20 am
Location: London

Re: Apple M1 Support

Postby huber » Tue Feb 02, 2021 12:41 pm

+1
swingman wrote:Thanks for your testing and the update
Robert Huber
7r AG, Switzerland
SAN Developer
http://www.seven-r.ch
User avatar
huber
 
Posts: 516
Joined: Mon May 14, 2012 11:31 pm

Re: Apple M1 Support

Postby rafig » Fri Feb 05, 2021 7:07 pm

Hi all,
just spotted this on ProductHunt, 'Apple Silicon M1 as a Service'
https://www.scaleway.com/en/hello-m1/?ref=producthunt
so I guess one could use this to try out Servoy stuff before actually buying an M1 based Mac?? (it's €0.10/hour, minimum of 24 hours, but that's only €2.40, a lot cheaper than buying one & not being able to use/deploy Servoy ;-) )

Rafi
Servoy Certified Developer
Image
rafig
 
Posts: 704
Joined: Mon Dec 22, 2003 12:58 pm
Location: Watford, UK

Re: Apple M1 Support

Postby rafig » Thu Mar 18, 2021 8:58 pm

Well, maybe I should have used used my own post idea, but I decided to splash out on an Apple Mac mini M1 (from Amazon as 19% off & with 5 x 0% payments).
Even after reading this post & the other on Big Sur, I thought I'd try (after updating to latest macOS releases) & install Servoy
Downloaded latest Mac 'application', copied to Applications, launched it and it started up ok (had to get Mac to install Command Line Utilities [Git]), and I let it setup the default Postgres server & databases, then installed the new Sample solution using package manager, launched it, and it ran fine in Safari, so I thought
"Yipee! It works!!"
but on quitting and re-launching it crashed out.
Tried rebooting and it now 'crashes' instantly (that M1 chip is fast ;-) )
So it doesn't work, but I'd like to know why it did on 1st install/run??

Hope it all gets sorted soon as I'd love to use the speed & power of the new chip for my development work...
Servoy Certified Developer
Image
rafig
 
Posts: 704
Joined: Mon Dec 22, 2003 12:58 pm
Location: Watford, UK

Re: Apple M1 Support

Postby rafig » Wed Mar 24, 2021 6:50 pm

It appears that Servoy 2021.03 release candidate 2 (release number 3641) works on Apple M1
see https://forum.servoy.com/viewtopic.php?uid=150&f=1&t=23179&start=0
Servoy Certified Developer
Image
rafig
 
Posts: 704
Joined: Mon Dec 22, 2003 12:58 pm
Location: Watford, UK

Next

Return to I'm just getting started

Who is online

Users browsing this forum: No registered users and 2 guests