Symbian
Symbian OS Library

FAQ-0739 Can I use JDK 1.2.2 to develop for Symbian OS?

[Index][spacer] [Previous] [Next]



 

Classification: Java Category: Tools
Created: 09/17/2001 Modified: 09/17/2001
Number: FAQ-0739
Platform: Not Applicable

Question:
Symbian OS SDKs for Java specify that developers should work with JDK 1.1.8. I already have JDK 1.2.2 and JDK 1.3 on my machine and want to know if I really need to install JDK 1.1.8 as well.

Answer:
The answer is that in most cases it should be possible to do Java development for Symbian OS with JDK 1.2.2 or JDK 1.3. There are however a small number of issues you should watch out for:
      1. A class java.util.List was introduced into JDK 1.2 which introduces the possibility of a namespace clash with java.awt.List when both java.awt.* and java.util.* are imported into a class. This problem prevents compilation of some Java examples on Symbian OS SDKs when using JDK1.2 or higher. The work around is to avoid ambiguity by specifying "java.awt.List" rather than just "List". The SDK examples will be modified in the future to incorporate this work around.
      2. You should make sure that you are not using any Java 2 (or indeed JDK 1.1.8) classes which are not supported in Symbian OS Personal Java. Sun provide a tool which enables you to verify this. See http://java.sun.com/products/personaljava/javacheck.html (although notice that for recent versions of Internet Explorer a misalignment of the headers of the table on that page occurs). Otherwise simply running your compiled code in a Symbian OS emulator is another way you can detect such problems.
      3. JNI development for Symbian OS only works for now with JDK 1.1.8. This is because the JNIExports.exe tool provided with all Symbian OS SDKs for Java makes explicit use of the file javai.dll located in the \bin folder of JDK 1.1.8. This file does not exist on JDK 1.2 or higher as the functionality it exports is packaged differently there.