Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
EDT:SettingUpForMobile
The set-up instructions differ by development platform:
For additional information on supported browsers, see EDT Supported Platforms.
Windows platforms
To develop a mobile application with EGL on a Windows platform, do as follows:
- Ensure that you are using a 32-bit version of Eclipse, even if you are working on Windows 7. You can fulfill this requirement by downloading an all-in-one EDT build from the following page: http://www.eclipse.org/edt/#download.
Before accessing a nightly EDT build, download Eclipse 3.7.2 from here. For details on accessing the EDT nightly build, see the EDT download page just mentioned.
- Download Apple Safari, which includes a version of the WebKit layout engine: http://www.apple.com/safari/download.
- Configure your PATH variable to include the Apple Application Support directory. For example, on Windows 7, the directory might be as follows:
C:\Program Files (x86)\Safari\Apple Application Support
- When you have configured a 32-bit version of Eclipse to include EDT, set the following defaults:
a. Set the preference for EGL Rich UI render engine. Specifically, click Window > Preferences, then expand EGL and Rich UI and, at the bottom of the Appearance page tab that is labeled General, click WebKit.
b. Set the preference for browser size. For example, at the Appearance page tab that is labeled Browser size, you might set the vertical size to 800 and the horizontal size to 400.
- Note that you can use widgets only of the following kinds:
- EGL Dojo mobile widgets, which are in the dojo.mobile.widgets package.
- EGL widgets that in the org.eclipse.edt.rui.widgets package.
- You cannot use the general EGL Dojo widgets, which are in the dojo.widgets package.
Troubleshooting
"Internal Error: No more handles"
You might encounter the problem described in bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=396721 after setting up EDT mobile development environment. The problem is caused by Oracle JRE dll file conflicts with WebKit since Oracle JRE 7u6. Below are various workarounds that you could try (please make sure you installed 32bit Eclipse and 32bit JVM before trying below workarounds),
- Use IBM JVM 6.x or 7.x (both JRE and JDK should work). Since libxml2.dll is not shipped with IBM JVMs, it has no such problem in our testing. You can refer to http://wiki.eclipse.org/Eclipse.ini for how to set up specific JVM with Eclipse.
- Use Oracle JDK instead of JRE. Oracle JRE provided libxml2.dll since JRE 7u6, which has conflict with WebKit dll. However, the JDK does not ship with libxml2.dll, so it does not have problem.
- Use Oracle JRE 7u5 or earlier, or use any of the Sun 1.6 JREs
Finally, you'd better try previous approaches with a new empty workspace, and start Eclipse with "-clean" option. If you still have the problem after using one workaround, you could try to reboot the machine and restart EDT.
Linux platforms
For Linux, the details vary by Eclipse version:
- If you're using Eclipse 3.6, ensure that webkit-gtk 1.2.x installed and then do as follows:
a. Access your Eclipse installation directory and add the following line to eclipse.ini:-Dorg.eclipse.swt.browser.UseWebKitGTK=true
b. After opening Eclipse, click Window > Preferences, expand EGL and Rich UI and, at the bottom of the Appearance page tab that is labeled General, click User configured.
- If you're using Eclipse 3.7, ensure that either webkit-gtk 1.2.x or 1.4.x is installed and then do as follows: click Window > Preferences, expand EGL and Rich UI and, at the bottom of the Appearance page tab that is labeled General, click Webkit.
- The EDT team has not tested more recent versions of Eclipse, which might support newer versions of webkit-gtk.
As is true on Windows platforms, you can use widgets only of the following kinds:
- EGL Dojo mobile widgets, which are in the dojo.mobile.widgets package.
- EGL widgets that in the org.eclipse.edt.rui.widgets package.
You cannot use the general EGL Dojo widgets, which are in the dojo.widgets package.