Hi Justin,
Ubuntu 18.04 is not officially supported, but it is possible install S32DS on this version and use it. Please follow installation requirements for Linux host (java version 1.8, some 32 bit libraries and So on).
Jiri
Hi Justin,
Ubuntu 18.04 is not officially supported, but it is possible install S32DS on this version and use it. Please follow installation requirements for Linux host (java version 1.8, some 32 bit libraries and So on).
Jiri
Hello, Jiri
When I tried to run S32DS 3.2 after installation I had a similar issue with this article:S32DS 3.2 fails to install on Ubuntu 18.04.4 with a weird Java complaint?
I got this error log when loading bar almost reach to 50%.
justin@justin-PC:~/NXP/S32DS.3.2$ ./s32ds.sh
Jul 02, 2020 10:39:51 AM com.nxp.swtools.common.utils.runtime.SingletonProvider getSingletonInstance
SEVERE: getSingletonInstance for com.nxp.swtools.ivt.controller.IVTController
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.nxp.swtools.common.utils.runtime.SingletonProvider.getSingletonInstance(SingletonProvider.java:46)
at com.nxp.swtools.common.ui.utils.swt.internal.SWTFactory.getSingletonInstance(SWTFactory.java:440)
at com.nxp.swtools.common.ui.utils.swt.SWTFactoryProxy.getSingletonInstance(SWTFactoryProxy.java:457)
at com.nxp.swtools.ivt.controller.IVTController.getInstance(IVTController.java:192)
at com.nxp.swtools.ivt.main.IVTServiceProvider.existsPointerOfLockState(IVTServiceProvider.java:48)
at com.nxp.swtools.ivt.main.IVTServiceProvider.getCurrentState(IVTServiceProvider.java:37)
at org.eclipse.ui.internal.services.EvaluationService.addSourceProvider(EvaluationService.java:157)
at org.eclipse.ui.internal.Workbench$47.runWithException(Workbench.java:2450)
at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:32)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:233)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:145)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:5414)
at org.eclipse.ui.internal.StartupThreading.runWithoutExceptions(StartupThreading.java:95)
at org.eclipse.ui.internal.Workbench.initializeDefaultServices(Workbench.java:2442)
at org.eclipse.ui.internal.Workbench.init(Workbench.java:1678)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2944)
at org.eclipse.ui.internal.Workbench.access$9(Workbench.java:2875)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:684)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:610)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:138)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
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 org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610)
at org.eclipse.equinox.launcher.Main.run(Main.java:1519)
at org.eclipse.equinox.launcher.Main.main(Main.java:1492)
Caused by: java.lang.NoClassDefFoundError: javafx/beans/property/SimpleBooleanProperty
at com.nxp.swtools.bootimage.settings.ABaseComponentSetting.<init>(ABaseComponentSetting.java:39)
at com.nxp.swtools.bootimage.settings.ABaseComponentSetting.<init>(ABaseComponentSetting.java:58)
at com.nxp.swtools.bootimage.settings.ImageHeader.<init>(ImageHeader.java:85)
at com.nxp.swtools.ivt.model.setting.IVTConfiguration.<init>(IVTConfiguration.java:100)
at com.nxp.swtools.ivt.mcu.EmptyMcu.getIvtConfiguration(EmptyMcu.java:151)
at com.nxp.swtools.ivt.controller.IVTController.<init>(IVTController.java:143)
... 39 more
Caused by: java.lang.ClassNotFoundException: Unable to locate JavaFX. Please make sure you have a JDK with JavaFX installed eg on Linux you require an Oracle JDK
at org.eclipse.fx.osgi.fxloader.FXClassLoader.postFindClass(FXClassLoader.java:64)
at org.eclipse.osgi.internal.loader.BundleLoader.searchHooks(BundleLoader.java:477)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:440)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:372)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:364)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:161)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
... 45 more
Job found still running after platform shutdown. Jobs should be canceled by the plugin that scheduled them during shutdown: org.eclipse.jdt.internal.ui.InitializeAfterLoadJob
And here is how I solved this issue:
Main point was that I had to run with java SDK provided by Oracle.
1. Download "jdk-8u251-linux-x64.tar.gz" from Java SE Development Kit 8 - Downloads | Oracle 대한민국 by manual
2. Unzip and copy unziped folder to /usr/lib/jvm
tar -xvf ~/Downloads/jdk-8u251-linux-x64.tar.gz
sudo mkdir -p /usr/lib/jvm/jdk1.8.0_251
sudo mv jdk1.8.0_251/* /usr/lib/jvm/jdk1.8.0_251/
3. Add jdk1.8.0 to lists of java
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.8.0_251/bin/java" 2048
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.8.0_251/bin/javac" 2048
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.8.0_251/bin/javaws" 2048
4. Choose jdk1.8.0 that we installed. type '2' in this case.
justin@justin-PC:~$ sudo update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/jdk1.8.0_251/bin/java 2048 auto mode
* 1 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
2 /usr/lib/jvm/jdk1.8.0_251/bin/java 2048 manual mode
Press <enter> to keep the current choice[*], or type selection number:
5. Confirm if it is applied properly.
justin@justin-PC:~$ java -version
java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)
In my previous setting which S32DS doesn't work, this is version that I have:
justin@justin-PC:~$ java -version
openjdk version "1.8.0_252"
OpenJDK Runtime Environment (build 1.8.0_252-8u252-b09-1~18.04-b09)
OpenJDK 64-Bit Server VM (build 25.252-b09, mixed mode)
After all this workaround, I can run S32DS well now.
Let me update more once I find another issue.
Thank you
BR
Justin
Is it possible for you to email me a copy of that compressed file "jdk-8u251-linux-x64.tar.gz". I can order you the biggest pizza for your help?