1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2 <html>
3
4 <head>
5 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
6 <title>Eclipse Project Release Notes 3.4</title>
7 </head>
8
9 <body>
10
11 <h1>Eclipse Project Release Notes</h1>
12 <p>Release 3.4.0<br>
13 Last revised June 10, 2008</p>
14 <p align="left"><strong>This software is OSI Certified Open Source Software.<br>
15 OSI Certified is a certification mark of the Open Source Initiative. </strong></p>
16 <blockquote>
17 <p align="left"><a href="#TargetOperatingEnvironments">1. Target Operating
18 Environments</a><br>
19 <a href="#Compatibility">2. Compatibility with Previous
20 Releases</a><br>
21 <a href="#Known Issues">3. Known Issues</a><br>
22 <a href="#Running Eclipse">4. Running Eclipse</a><br>
23 <a href="#Upgrading">5. Upgrading a Workspace from a Previous Release</a><br>
24 <a href="#Interoperability with Previous Releases">6. Interoperability with
25 Previous Releases</a><br>
26 </p>
27 </blockquote>
28
29 <h2>1. <a name="TargetOperatingEnvironments"></a>Target Operating Environments</h2>
30 <p>In order to remain current, each Eclipse release targets reasonably current
31 operating environments. </p>
32 <p>Most of the Eclipse SDK is "pure" Java code and has no direct dependence
33 on the underlying operating system. The chief dependence is therefore on the
34 Java Platform itself. Portions of the Eclipse SDK (including the RCP base,
35 SWT, OSGi and JDT core plug-ins) are targeted to specific classes of operating
36 environments, requiring their source code to only reference facilities available
37 in particular class libraries (e.g. J2ME Foundation 1.0, J2SE 1.3 and 1.4,
38 etc.). </p>
39 <p> In general, the 3.4 release of the Eclipse Project is developed on a mix
40 of Java 1.4 and Java5 VMs. As such, the Eclipse Project SDK as a whole is targeted
41 at both 1.4 and Java5 VMs, with full functionality available for 1.4 level
42 development everywhere, and new Java5 specific capabilities available when
43 running on a Java5 VM. Similarly, in cases where support has been added for
44 Java6 specific features (e.g. JSR-199, JSR-269, etc.) Java6 VMs are required. </p>
45 <p> <a href="#Appendix1">Appendix 1</a> contains a table that indicates the class
46 library level required for each plug-in. </p>
47 <p>There are many different implementations of the Java Platform running atop
48 a variety of operating systems. We focus Eclipse SDK testing on a handful of
49 popular combinations of operating system and Java Platform; these are our <em>reference
50 platforms</em>. Eclipse undoubtedly runs fine in many operating environments
51 beyond the reference platforms we test, including those using Java6 VMs. However,
52 since we do not systematically test them we cannot vouch for them. Problems
53 encountered when running Eclipse on a non-reference platform that cannot be
54 recreated on any reference platform will be given lower priority than problems
55 with running Eclipse on a reference platform.</p>
56 <p> The Eclipse SDK 3.4 is tested and validated on the following reference platforms</p>
57 <center>
58 <table border="1" cellpadding="2" cellspacing="2" width="80%" summary="Eclipse Reference Platforms">
59 <tbody>
60 <tr align="center">
61 <td><b>Reference Platforms</b></td>
62 </tr>
63 <tr>
64 <td><b>Microsoft Windows Vista, x86-32, Win32</b> running (any of):
65 <ul>
66 <li>Sun Java 2 Standard Edition 5.0 Update 14 for Microsoft Windows</li>
67 <li>IBM 32-bit SDK for Windows, Java 2 Technology Edition 5.0, SR6b</li>
68 <li>BEA JRockit 27.4.0, for Microsoft Windows</li>
69 </ul></td>
70 </tr>
71 <tr>
72 <td><b>Microsoft Windows XP, x86-32, Win32</b> running (any of):
73 <ul>
74 <li>Sun Java 2 Standard Edition 6.0 Update 4 for Microsoft Windows</li>
75 <li>Sun Java 2 Standard Edition 5.0 Update 14 for Microsoft Windows</li>
76 <li>IBM 32-bit SDK for Windows, Java 2 Technology Edition 5.0, SR6b</li>
77 <li>BEA JRockit 27.4.0, for Microsoft Windows</li>
78 <li>Sun Java 2 Standard Edition 1.4.2_16 for Microsoft Windows</li>
79 <li>IBM 32-bit SDK for Windows, Java 2 Technology Edition 1.4.2 SR10</li>
80 </ul></td>
81 </tr>
82 <tr>
83 <td><b>Red Hat Enterprise Linux 5.0, x86-32, GTK</b> running (any of):
84 <ul>
85 <li>Sun Java 2 Standard Edition 5.0 Update 14 for Linux x86</li>
86 <li>IBM 32-bit SDK for Linux on Intel architecture, Java 2 Technology Edition 5.0, SR6b</li>
87 <li>BEA JRockit 27.4.0, for Linux x86</li>
88 <li>Sun Java 2 Standard Edition 1.4.2_16 for Linux x86</li>
89 <li>IBM 32-bit SDK for Linux on Intel architecture, Java 2 Technology Edition 1.4.2 SR10</li>
90 </ul></td>
91 </tr>
92 <tr>
93 <td><b>SUSE Linux Enterprise Server 10, x86-32, GTK</b> running (any
94 of):
95 <ul>
96 <li>Sun Java 2 Standard Edition 5.0 Update 14 for Linux x86</li>
97 <li>IBM 32-bit SDK for Linux on Intel architecture, Java 2 Technology Edition 5.0, SR6b</li>
98 </ul></td>
99 </tr>
100 <tr>
101 <td><b>Microsoft Windows Vista, x86-64, Win32</b> running (any of):
102 <ul>
103 <li>Sun Java 2 Standard Edition 5.0 Update 14 for Microsoft Windows (AMD64/EM64T)</li>
104 <li>IBM 64-bit SDK for Windows, Java 2 Technology Edition 5.0, SR6b</li>
105 </ul></td>
106 </tr>
107 <tr>
108 <td><b>Microsoft Windows XP Professional x64 Edition, x86-64, Win32</b> running (any of):
109 <ul>
110 <li>Sun Java 2 Standard Edition 5.0 Update 14 for Microsoft Windows (AMD64/EM64T)</li>
111 <li>IBM 64-bit SDK for Windows, Java 2 Technology Edition 5.0, SR6b</li>
112 </ul></td>
113 </tr>
114 <tr>
115 <td><b>Red Hat Enterprise Linux 4.0 update 2, x86-64, GTK</b> running:
116 <ul>
117 <li>Sun Java 2 Standard Edition 5.0 Update 14 for Linux x86_64</li>
118 </ul></td>
119 </tr>
120 <tr>
121 <td><b>Sun Solaris 10, SPARC, GTK</b> running:
122 <ul>
123 <li>Sun Java 2 Standard Edition 5.0 Update 14 for Solaris SPARC</li>
124 </ul></td>
125 </tr>
126 <tr>
127 <td><b>HP-UX 11i v2, ia64, Motif 2.1, GTK</b> running:
128 <ul>
129 <li>HP-UX Java 2 Standard Edition 5.0 Update 7 for Itanium</li>
130 </ul></td>
131 </tr>
132 <tr>
133 <td><b>IBM AIX 5.3, Power, Motif 2.1</b> running:
134 <ul>
135 <li>IBM 32-bit SDK, Java 2 Technology Edition 5.0, SR6b</li>
136 </ul></td>
137 </tr>
138 <tr>
139 <td><b>Red Hat Enterprise Linux 5.0, Power, GTK</b> running:
140 <ul>
141 <li>IBM 32-bit SDK for Linux on pSeries architecture, Java 2 Technology Edition 5.0, SR6b</li>
142 </ul></td>
143 </tr>
144 <tr>
145 <td><b>SUSE Linux Enterprise Server 10, Power, GTK</b> running:
146 <ul>
147 <li>IBM 32-bit SDK for Linux on pSeries architecture, Java 2 Technology Edition 5.0, SR6b</li>
148 </ul></td>
149 </tr>
150 <tr>
151 <td><b>Apple Mac OS X 10.5, Universal, Carbon</b> running:
152 <ul>
153 <li>Apple Java 2 Platform Standard Edition (J2SE) 5, service release 4</li>
154 </ul></td>
155 </tr>
156 </tbody>
157 </table>
158 </center>
159 <p>Because Java 1.4.2 and Java5 based platforms are used for most Eclipse development,
160 those platforms are listed here. Although there are teams doing some Java 6
161 based development we have not included specific Java6 VMs, since they have
162 not yet received the general level of testing we require. <i>We expect that
163 Eclipse will work fine on other current Java VMs running on window systems
164 supported by SWT, but can not flag these as reference platforms without significant
165 community support for testing them.</i></p>
166 <p>Similarly, although untested, the Eclipse SDK should work fine on other OSes
167 that support the same window system. For Win32: NT, 2000, and Server 2003;
168 SWT HTML viewer requires Internet Explorer 5 (or higher). For GTK on other
169 Linux systems: version 2.2.1 of the GTK+ widget toolkit and associated libraries
170 (GLib, Pango); SWT HTML viewer requires Mozilla 1.4GTK2. For Motif on Linux
171 systems: Open Motif 2.1 (included); SWT HTML viewer requires Mozilla 1.4GTK2.</p>
172 <p>SWT is also supported on the QNX Neutrino operating system, x86 processor,
173 Photon window system, and <a href="http://wiki.eclipse.org/J9">IBM J9™ VM</a>.
174 Eclipse 3.4 on Windows or Linux can be used to cross-develop QNX applications.
175 (Eclipse 3.4 is unavailable on QNX because there is currently no 1.5 J2SE for
176 QNX.)</p>
177 <h4>Internationalization</h4>
178 <p>The Eclipse SDK is designed as the basis for internationalized products. The
179 user interface elements provided by the Eclipse SDK components, including dialogs
180 and error messages, are externalized. The English strings are provided as the
181 default resource bundles.</p>
182 <p>Latin-1 and DBCS locales are supported by the Eclipse SDK on all reference platforms;
183 BIDI locales are supported by the Eclipse SDK everywhere but on Motif.</p>
184 <p>The Eclipse SDK supports GB 18030 (level 1), the Chinese code page standard,
185 on Windows XP and 2000, Linux/GTK and the Macintosh.</p>
186 <p>German and Japanese locales are tested.</p>
187
188 <h2>2. <a name="Compatibility"></a>Compatibility with Previous Releases</h2>
189 <h3>Compatibility of Release 3.4 with 3.3</h3>
190 <p>Eclipse 3.4 is compatible with Eclipse 3.3 (and, hence, with 3.2, 3.1
191 and 3.0).</p>
192 <p> <strong>API Contract Compatibility:</strong> Eclipse SDK 3.4 is upwards
193 contract-compatible with Eclipse SDK 3.3 except in those areas noted in the <a href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/org.eclipse.platform.doc.isv/porting/eclipse_3_4_porting_guide.html" target="_top"> <em>Eclipse
194 3.4 Plug-in Migration Guide</em></a>. Programs that use affected APIs and extension
195 points need to be ported to Eclipse SDK 3.4 APIs. Downward contract compatibility
196 is not supported. There is no guarantee that compliance with Eclipse SDK 3.4
197 APIs would ensure compliance with Eclipse SDK 3.3 APIs. Refer to <a href="http://wiki.eclipse.org/index.php/Evolving_Java-based_APIs"> <em>Evolving
198 Java-based APIs</em> </a> for a discussion of the kinds of API changes that
199 maintain contract compatibility. </p>
200 <p><strong>Binary (plug-in) Compatibility:</strong> Eclipse SDK 3.4 is upwards
201 binary-compatible with Eclipse SDK 3.3 except in those areas noted in the <a href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/org.eclipse.platform.doc.isv/porting/eclipse_3_4_porting_guide.html" target="_top"> <em>Eclipse
202 3.4 Plug-in Migration Guide</em></a>. Downward plug-in compatibility is not
203 supported. Plug-ins for Eclipse SDK 3.4 are not usable in Eclipse SDK 3.3.
204 Refer to <a href="http://wiki.eclipse.org/index.php/Evolving_Java-based_APIs"> <em>Evolving
205 Java-based APIs</em> </a> for a discussion of the kinds of API changes that
206 maintain binary compatibility. </p>
207 <p><strong>Source Compatibility:</strong> Eclipse SDK 3.4 is upwards source-compatible
208 with Eclipse SDK 3.3 except in the areas noted in the <a href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/org.eclipse.platform.doc.isv/porting/eclipse_3_4_porting_guide.html" target="_top"> <em>Eclipse
209 3.4 Plug-in Migration Guide</em></a>. This means that source files written
210 to use Eclipse SDK 3.3 APIs might successfully compile and run against Eclipse
211 SDK 3.4 APIs, although this is not guaranteed. Downward source compatibility
212 is not supported. If source files use new Eclipse SDK APIs, they will not be
213 usable with an earlier version of the Eclipse SDK. </p>
214 <p><strong>Workspace Compatibility:</strong> Eclipse SDK 3.4 is upwards
215 workspace-compatible with Eclipse SDK 3.3 unless noted. This means that workspaces
216 and projects created with Eclipse SDK 3.3, 3.2, 3.1 or 3.0 can be successfully
217 opened by Eclipse SDK 3.4 and upgraded to a 3.4 workspace. This includes both
218 hidden metadata, which is localized to a particular workspace, as well as metadata
219 files found within a workspace project (e.g., the .project file), which may
220 propagate between workspaces via file copying or team repositories. Individual
221 plug-ins developed for Eclipse SDK 3.4 should provide similar upwards compatibility
222 for their hidden and visible workspace metadata created by earlier versions;
223 3.4 plug-in developers are responsible for ensuring that their plug-ins recognize
224 3.3, 3.2, 3.1, 3.0, 2.1, and 2.0 metadata and process it appropriately. User
225 interface session state may be discarded when a workspace is upgraded. Downward
226 workspace compatibility is not supported. A workspace created (or opened) by
227 a product based on Eclipse 3.4 will be unusable with a product based an earlier
228 version of Eclipse. Visible metadata files created (or overwritten) by Eclipse
229 3.4 will generally be unusable with earlier versions of Eclipse. </p>
230 <p><strong>Non-compliant usage of API's</strong>: All non-API methods and classes,
231 and certainly everything in a package with "internal" in its name,
232 are considered implementation details which may vary between operating environment
233 and are subject to change without notice. Client plug-ins that directly depend
234 on anything other than what is specified in the Eclipse SDK API are inherently
235 unsupportable and receive no guarantees about compatibility within a single
236 release much less with earlier releases. Refer to <a href="http://www.eclipse.org/articles/Article-API%20use/eclipse-api-usage-rules.html"> <em>How
237 to Use the Eclipse API</em> </a> for information about how to write compliant
238 plug-ins. </p>
239
240 <h2>3. <a name="Known Issues"></a> Known Issues</h2>
241 <blockquote>
242 <a href="I-General">
243 3.1 General problems</a><br>
244 <a href="#I-General-Startup">3.1.1 Startup</a><br>
245 <a href="#I-General-GCJ">3.1.2 GCJ</a><br>
246 <a href="#I-General-UNC">3.1.3 UNC Paths</a><br>
247 <a href="#I-General-64bitJava">3.1.4 64-bit Java HotSpot(TM) VM</a><br>
248 <a href="#I-Platform">3.2 Platform</a><br>
249 <a href="#I-Platform-Core">3.2.1 Core</a><br>
250
251 <a href="#I-Platform-Ant">3.2.2 Ant</a><br>
252 <a href="#I-Platform-User-Assistance">3.2.3 User Assistance</a><br>
253 <a href="#I-Platform-UI">3.2.4 UI</a><br>
254 <a href="#I-Platform-Text">3.2.5 Text</a><br>
255 <a href="#I-Platform-SWT">3.2.6 SWT</a><br>
256
257 <a href="#I-Platform-Team-CVS">3.2.7 Team and CVS</a><br>
258 <a href="#I-Platform-Install-Update">3.2.8 Install/Update</a><br>
259 <a href="#I-Platform-Debug">3.2.9 Debug</a><br>
260 <a href="#I-Platform-Compare">3.2.10 Compare</a><br>
261 <a href="#I-JDT">
262 3.3 Java development tools (JDT)</a><br>
263 <a href="#I-PDE">
264 3.4 Plug-in Development Environment (PDE)</a><br>
265
266 </blockquote>
267 <p>Note: Bug numbers refer to the Eclipse project bug database at <a href="http://dev.eclipse.org/bugs/">http://bugs.eclipse.org/bugs/</a></p>
268
269 <h3>3.1 <a name="I-General">General problems</a></h3>
270 <h3>3.1.1 <a name="I-General-Startup">General - Startup</a></h3>
271 <h4>Installation/Configuration issues that can cause Eclipse to fail start</h4>
272 <p>Here are some common problems that can cause Eclipse not to start:</p>
273 <ul>
274 <li>As shown <a href="#TargetOperatingEnvironments">above</a>, Eclipse 3.4 requires
275 at least a 1.4.2 VM. Perhaps an older version of the VM is being found in
276 your path. To explicitly specify which VM to run with, use the Eclipse <tt>-vm</tt>
277 command-line argument. (See also the <a href="#Running Eclipse">Running Eclipse</a>
278 section below.)</li>
279 <li>
280 Running Eclipse on Gentoo Linux may result in the following error message:
281 <div style="margin-left: 40px;">
282 <tt>* run-java-tool is not available for sun-jdk-1.6 on i686<br>* IMPORTANT: some Java tools are not available on some VMs on some architectures</tt>
283 </div>
284
285 If this occurs, start Eclipse by specifying a -vm argument, either
286 specify the path to a java vm or use: <tt>eclipse -vm `java-config</tt>
287 --java` (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=176021">176021</a>)</li>
288 <li>Eclipse must be installed to a clean directory and not installed over top of
289 a previous installation. If you have done this then please re-install to a new
290 directory. If your workspace is in a child directory of your old installation
291 directory, then see the instructions below on "<a href="#upgrading">Upgrading Workspace from a
292 Previous Release"</a>.</li>
293
294 <li>Java sometimes has difficulty detecting whether a file system is writable. In
295 particular, the method java.io.File.canWrite() appears to return true in
296 unexpected cases (e.g., using Windows drive sharing where the share is a
297 read-only Samba drive). The Eclipse runtime generally needs a writable
298 configuration area and as a result of this problem, may erroneously detect the
299 current configuration location as writable. The net result is that Eclipse will
300 fail to start and depending on the circumstances, may fail to write a log file
301 with any details. To work around this, we suggest users experiencing this
302 problem set their configuration area explicitly using the <tt>-configuration</tt> command
303 line argument. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=67719">67719</a>)</li>
304 </ul>
305
306 <h4><b>Invalid characters in install directory prevents Eclipse from starting</b></h4>
307 <p>Eclipse will fail to launch if installed in a directory whose path
308 contains certain invalid characters, including :%#<>"!. The
309 workaround is to install Eclipse in a directory whose path does not contain
310 invalid characters. (bugs <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=3109">3109</a>
311 and <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=17281">17281</a>)</p>
312
313 <h4>Hanging during class loading when out of permanent generation memory</h4>
314 <p>
315 The Sun VM may hang indefinitely during class loading if it runs out of permanent
316 generation memory. This will cause CPU usage to stay at 100% until the process
317 is ended. See the section <a href="#Running Eclipse">Running Eclipse</a> for details
318 on addressing this VM problem.
319 </p>
320
321 <h3>3.1.2 <a name="I-General-GCJ">General - GCJ</a></h3>
322 <p>GCJ is an effort by the GCC team to provide an open source Java compiler and
323 runtime environment to interpret Java bytecode. Unfortunately, the GCJ runtime
324 environment is not an environment that is often tested on by Eclipse
325 developers.</p>
326
327 <p>The most common problems surrounding GCJ are:</p>
328 <ul>
329 <li>Eclipse does not start at all</li>
330 <li>Eclipse throws a 'java.lang.ClassNotFoundException: org.eclipse.core.runtime.Plugin' that can be found in the logs (located in
331 workspace/.metadata/.log)</li>
332 </ul>
333
334 <p>The workspace's log file is a good place to check to identify whether GCJ is
335 being used or not. Every Eclipse log session should be prepended with
336 information about the runtime environment that was used to run Eclipse. The log
337 may include something like the following:</p>
338
339 <code>java.fullversion=GNU libgcj 4.2.1 (Debian 4.2.1-5)</code>
340
341 <p>If Eclipse does start, one can check which runtime environment is being used to
342 run Eclipse by going to 'Help > About Eclipse SDK > Configuration Details'. The
343 About Dialog itself can also provide other information, the build identifier
344 can be of particular interest as it is tagged by some distributions. This allows the
345 user to identify whether Eclipse was downloaded through the distribution's
346 package management system or directly from the eclipse.org website.</p>
347
348 Eg: <code>Build id: M20070212-1330 (Ubuntu version: 3.2.2-0ubuntu3)</code>
349
350 <p>The two most common workarounds are:</p><ul>
351 <li>download the Eclipse binary from eclipse.org directly</li>
352 <li>run Eclipse using an alternate Java runtime environment</li></ul>
353
354 <p>To download Eclipse, try one of the links below:</p><ul>
355 <li><a href="http://www.eclipse.org/downloads/">http://www.eclipse.org/downloads/</a></li>
356 <li><a href="http://download.eclipse.org/eclipse/downloads/">http://download.eclipse.org/eclipse/downloads/</a></li></ul>
357
358 It is imperative that 64-bit builds are downloaded and used if a 64-bit Java
359 runtime environment has been installed. Below are two sample tarball names of
360 version 3.4.0 of the Eclipse SDK packaged for 32-bit and 64-bit processors.
361
362 <pre>eclipse-SDK-3.4-linux-gtk.tar.gz (32-bit)
363 eclipse-SDK-3.4-linux-gtk-x86_64.tar.gz (64-bit)</pre>
364
365 <p>To run Eclipse with an alternate Java runtime environment, the path to the Java
366 virtual machine's binary must be identified. With an Eclipse installation from
367 the distribution, altering the $PATH variable to include the path to the
368 alternate Java runtime environment is often not enough as the Eclipse that
369 Linux distributions package often performs a scan internally to pick up GCJ by
370 itself whilst ignoring what's on the $PATH. An example of the terminal's output
371 is shown below:</p>
372
373 <code>searching for compatible vm...<br>
374 testing /usr/lib/jvm/java-7-icedtea...not found<br>
375 testing /usr/lib/jvm/java-gcj...found</code>
376
377 <p>Once the path to the virtual machine's binary has been identified, try running
378 Eclipse with the following command:</p>
379
380 <code>./eclipse -vm /path/to/jre/bin/java</code>
381
382 <p>For an actual example, it might look something like the following:</p>
383
384 <code>./eclipse -vm /usr/lib/jvm/sun-java-6/bin/java<br>
385 ./eclipse -vm /opt/sun-jdk-1.6.0.02/bin/java</code>
386
387 <p>If this seems to solve the problem, it is likely that the problem really was
388 related to the use of GCJ as the Java runtime for running Eclipse. The
389 eclipse.ini file located within Eclipse's folder can be altered to
390 automatically pass this argument to Eclipse at startup. An example of its
391 content is presented below:</p>
392
393 <code>-showsplash<br>
394 org.eclipse.platform<br>
395 --launcher.XXMaxPermSize<br>
396 256m<br>
397 -vm<br>
398 /opt/sun-jdk-1.6.0.02/bin/java<br>
399 -vmargs<br>
400 -Xms40m<br>
401 -Xmx512m</code>
402
403 <p>Note that every argument must be on its own line. More information about the
404 eclipse.ini file can be found at <a href="http://wiki.eclipse.org/Eclipse.ini">http://wiki.eclipse.org/Eclipse.ini</a>.</p>
405
406 <p>If problems persists after downloading an installation of Eclipse from
407 eclipse.org and using a supported Java runtime environment (a list of which may be found <a href="#TargetOperatingEnvironments">above</a>),
408 you can seek further assistance through the <a href="http://www.eclipse.org/newsgroups/">newsgroups</a>,
409 the IRC <a href="irc://irc.freenode.net/#eclipse">channel</a>,
410 and/or <a href="https://bugs.eclipse.org/bugs/">bugzilla</a>.
411 </p>
412
413 <h3>3.1.3 <a name="I-General-UNC">General - UNC Paths</a></h3>
414 <p>Eclipse 3.4.0 does not properly handle installation in a directory using
415 Universal Naming Convention (UNC) paths. Limited uses of the platform will
416 work in this environment, but there are known bugs with starting workspaces on
417 a UNC location, or upgrading software installed in a UNC location
418 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=235629">235629</a>,
419 bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=207103">207103</a>).
420 The platform is not well tested in such an environment.</p>
421
422 <h3>3.1.3 <a name="I-General-64bitJava">General - 64-bit Java HotSpot(TM) VM</a></h3>
423 <p>
424 There is a known issue with the 64-bit Java HotSpot(TM) 1.6.0 VM compiler which causes eclipse to
425 crash (see Sun bug <a href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6614100">http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6614100</a>,
426 and Eclipse bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=214092">214092</a>).
427 The crash usually occurs within a VM CompilerThread when attempting to compile the method org.eclipse.core.internal.dtree.DataTreeNode.forwardDeltaWith.
428 </p>
429
430 <p>
431 To work around the issue you can exclude the method org.eclipse.core.internal.dtree.DataTreeNode.forwardDeltaWith from being compiled with the following
432 VM argument:
433 </p>
434
435 <code>
436 -XX:CompileCommand=exclude,org/eclipse/core/internal/dtree/DataTreeNode,forwardDeltaWith
437 </code>
438
439 <p>
440 This VM argument can be placed in the eclipse.ini file after the -vmargs line like the following:
441 </p>
442
443 <code>
444 -startup<br>
445 plugins\org.eclipse.equinox.launcher_1.0.100.v20080509-1800.jar<br>
446 --launcher.library<br>
447 plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.100.v20080509-1800<br>
448 -showsplash<br>
449 org.eclipse.platform<br>
450 --launcher.XXMaxPermSize<br>
451 256m<br>
452 -vmargs<br>
453 -XX:CompileCommand=exclude,org/eclipse/core/internal/dtree/DataTreeNode,forwardDeltaWith<br>
454 -Xms40m<br>
455 -Xmx256m<br>
456 </code>
457
458 <p>
459 There have been reports of other classes that cause the compiler to crash. If all else fails you can
460 disable the compiler with the VM arg "-Xint".
461 </p>
462
463 <h3>3.2 <a name="I-Platform">Platform</a></h3>
464
465 <h3>3.2.1 <a name="I-Platform-Core">Platform - Core</a></h3>
466
467 <h4>Installing plug-ins by unzipping them into the plugins directory</h4>
468 <p>If you have installed new plug-ins and they aren't showing up when you run,
469 then perhaps you unzipped them into your "plugins" directory and your
470 configuration might need to be refreshed. This can be accomplished by starting
471 Eclipse with the <tt>-clean</tt> command line argument.</p>
472
473 <h4>XML files with UTF-8 byte order mark fail to have content type detected</h4>
474 <p>Eclipse will fail to detect the proper content type for XML files that have a
475 UTF-8 byte order mark if Crimson is the XML parser (as it is on Sun 1.4 JREs,
476 but not on Sun 1.5 JREs). This
477 problem will prevent actions normally available when files of the affected
478 content types are selected from being presented to the user. The workaround is
479 to ensure the default XML parser supports UTF-8 BOMs (such as Xerces does). (bug
480 <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=67048">67048</a>)</p>
481 <h4>No branding with old config.ini</h4>
482 <p>If you have an old config.ini file and use it with a new Eclipse build, you
483 may not get the correct product branding. This is because the id of the standard
484 Eclipse product changed. Users in shared install scenarios may end up in this
485 situation as previous builds of Eclipse automatically generated config.ini files
486 in some cases. The work around is either to delete the local config.ini or
487 update the eclipse.product line to read eclipse.product=org.eclipse.platform.ide.</p>
488
489 <h4>Problems with
490 classloaders in created threads</h4>
491 <p>There is a known issue with trying to load classes from a newly-created
492 thread using a class loader different from the plug-in class loader. The result
493 will be a <code>ClassNotFoundException</code>. As a workaround, do the
494 following:</p>
495 <ol>
496 <li>Create a thread in which to run your code.</li>
497 <li>Send yourThread.setContextClassLoader(yourClassLoader); // you can find
498 your classloader by grabbing a class it loaded (YourPluginClass.class.getClassLoader())</li>
499 <li>Run your code in the newly created thread.</li>
500 </ol>
501 <p>If you set the context class loader for the current thread, you are
502 competing with other users of the thread (all of Eclipse), so the results will
503 be unpredictable. However, there should be no problem in practice provided you
504 reset the context class loader back to its original value when your use in the
505 current thread is complete. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=8907">8907</a>)</p>
506
507 <h4>Deadlock creating executable
508 extension in Plugin.startup</h4>
509 <p>If <code>Plugin.startup</code> code is too complex and performs tasks such
510 as creating an executable extension, a deadlock situation can be created. Only
511 simple bookkeeping tasks should be performed in <code>Plugin.startup</code>
512 code. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=5875">5875</a>)</p>
513 <h4>Potential Problems Converting Plug-in Manifests</h4>
514 <p>If your plug-in ships with a plug-in manifest and not an OSGi bundle manifest,
515 is shipped as a JAR file, and contains a nested JAR file then there may be
516 problems in the automatic generation of the bundle manifest file. The packages
517 defined in the nested JAR may not be exported correctly in the <tt>Export-packages</tt>
518
519 bundle manifest header. To work around this you should ship your plug-in with a
520 bundle manifest. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=97689">97689</a>)</p>
521 <h4>Location for Debug Options File on Mac OS</h4>
522 <p>If you are running in debug mode on Mac OS, the default location for the
523 .options file is inside the application bundle in the Eclipse.app/Contents/MacOS
524 directory (like the eclipse.ini). (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=88782">88782</a>)</p>
525 <h4>Configuration can become invalid when removing org.eclipse.update.configurator</h4>
526 <p>When launching an Eclipse Application from within the Eclipse IDE it is possible
527 to select the set of plug-ins that are included in the Eclipse Application.
528 Removing the org.eclipse.update.configurator plug-in from the set of plug-ins to
529 an existing configuration can cause the configuration to become invalid. This
530 can result in extra plug-ins installed in the target application that are not
531 resolved. To work around this, after the org.eclipse.update.configurator
532 plug-in has been removed, the target configuration area should be cleared before
533 launching. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=85835">85835</a>)</p>
534
535 <h4>Issues with JNI that use FindClass</h4>
536 <p>
537 There may be issues when using a JNI implementation that uses FindClass
538 in a function where the JNIEnv pointer is not available, such as in a C
539 callback (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=125250">125250</a>). The reason is that FindClass, in this case, uses the application
540 class loader to find the class.
541 If the desired class is in the classpath used for the application classloader
542 (e.g. defined by the VM argument -cp <classpath>), as it would typically be in
543 a stand-alone application, there is no problem. However, under
544 Eclipse, the application classloader does not have access to classes
545 contained in plug-ins. Eclipse uses its own class loader to find classes
546 contained in plug-ins.
547 </p>
548 <p>
549 The proper plug-in class loader is used by FindClass in JNI functions which are
550 passed the JNIEnv pointer, but not when you have to use AttachCurrentThread to get the
551 JNIEnv pointer. In this case the application classloader is used.
552 </p>
553 <p>
554 For example, the following will fail because AttachCurrentThread is used to
555 get the JNIEnv pointer:</p>
556 <pre>
557 static JavaVM* jvm; // Global variable
558
559 void myCallback(void) {
560 JNIEnv* env;
561 jvm->AttachCurrentThread((void**)&env, NULL);
562 // Fails if some/class is not in the application classloader:
563 jclass cls = env->FindClass("some/class");
564 jmethodID methodID = env->GetMethodID(cls, "methodName",
565 "(Ljava/lang/String;)V or whatever signature");
566 env->CallVoidMethod(callback, methodID, ...);
567 jvm->DetachCurrentThread();
568 }
569 }
570 </pre>
571 <p>
572 A solution is to cache the method ID, for example:
573 </p>
574 <pre>
575 static jmethodID mid; // Global variable
576
577 JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
578 ...
579 // Store the JavaVM pointer
580 jvm = vm;
581
582 // Find the class and store the method ID
583 // Will use the class loader that loaded the JNI library
584 jclass cls = env->FindClass(className"some/class");
585 if(!cls) goto ERR;
586
587 mid = env->GetMethodID(cls, "methodName",
588 "(Ljava/lang/String;)V or whatever signature");
589 if(!mid) goto ERR;
590 ...
591 }
592
593 void myCallback(void) {
594 JNIEnv* env;
595 jvm->AttachCurrentThread((void**)&env, NULL);
596 env->CallVoidMethod(callback, mid, ...);
597 // Handle error ...
598 jvm->DetachCurrentThread();
599 }
600 }
601 </pre>
602
603
604 <h3>3.2.2 <a name="I-Platform-Ant">Platform - Ant</a></h3>
605 <h4>UTF-8 encoded buildfiles with Byte Order Mark</h4>
606 <p>UTF-8 encoded buildfiles with byte order marks will fail to be parsed correctly depending on the XML parser being used for the build. Therefore a valid buildfile will fail to build with an error message similar to: "BUILD FAILED: C:\workspace\bom.xml:1: Document root element is missing.". To succeed in building with these files, ensure to include Xerces jars on the Ant runtime classpath so that the Xerces parser is used to parse the XML. As well the context menu for these files in the Navigator or Package Explorer will not have the run shortcuts for Ant builds. (bug
607 <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=67048">67048</a>)</p>
608 <h4> Custom Ant tasks and Ant
609 types must be separate from plug-in library JARs</h4>
610 <p>Including the class files for custom Ant tasks or Ant types in the regular
611 code JAR for your plug-in causes problems. These class files must be provided in
612 a separate JAR that is contributed to the <code>org.eclipse.ant.core.antTasks</code>
613 or <code>antTypes</code> extension point (and not declared as a library in the
614 plug-in's manifest). This ensures that the Ant tasks and types are loaded by the
615 special Ant class loader and not by a plug-in classloader. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=34466">34466</a>).</p>
616
617 <h4> Concurrent Ant builds not supported</h4>
618 <p>Eclipse can run Ant in the same JVM as the rest of Eclipse. Several aspects
619 of Ant and its use of global Java resources (such as System.out and System.err),
620 make it unsafe to run more than one Ant build concurrently in the same JVM. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=24129">24129</a>).</p>
621 <h4> Running certain Ant tasks
622 cause memory leakage</h4>
623 <p>Certain Ant tasks are known to leak memory. Please see the bug report for
624 details, patches, and possible workarounds. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=24448">24448</a>)</p>
625 <h4> Tasks that require input
626 lock up workspace</h4>
627
628 <p>As with using Ant from the command line, prompts for input from the
629 console is not handled. This is not the same as making use of the <input>
630 task, which works correctly within Eclipse. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=21748">21748</a>)</p>
631 <h4>"version" property is always set when running Ant in the same VM as Eclipse</h4>
632 <p>The Xalan libraries set system properties including a version property. These get set as properties within the Ant build and therefore the "version" property cannot be set within an Ant buildfile due to the immutable nature of Ant properties. This property will always be set to "2.4.1" for Ant builds in the same VM as Eclipse. (bug
633 <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=45717">45717</a>)</p>
634 <h4>XDoclet support from within Eclipse</h4>
635
636 <p>Since there are differences when running Ant from the commandline and within Eclipse, some extra steps may be needed to have XDoclet support function correctly within Eclipse. Problems may occur creating XDoclet subtasks. The workarounds and full discussion can be found in bug report. (bug
637 <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=37070">37070</a>)</p>
638 <h4>Ant Editor code completion based on Ant 1.6.1</h4>
639 <p>Code completion provided by the Ant editor does not respect the user-specified version of org.eclipse.ant.core plug-in or ANT_HOME. Code completion proposals are mostly based on Ant 1.6.1 with some updates to Ant 1.6.5 (bug
640 <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=30886">30886</a>)</p>
641 <h4> Eclipse can hang due to implementation of the Ant <property> task (Windows 9X
642 only)</h4>
643 <p>On Windows 9X, using:<property environment="env"/> will cause Eclipse to hang if the build occurs in the same VM as Eclipse. Running the build in a separate VM will hang the build but not Eclipse.
644 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=44196">44196</a>)</p>
645
646 <h4> Setting build loggers not supported when debugging Ant builds</h4>
647 <p>When debugging Ant builds within Eclipse, setting -logger as a program argument will be ignored.</p>
648
649 <h4>Renaming an External Tool builder set to run during auto-build will cause errors</h4>
650 <p>If you rename an existing external tool builder that is configured to run during auto-builds, you will get the following error:
651 Errors during build.
652 Errors running builder "Integrated External Tool Builder" on project
653 <PROJECT_NAME>.
654 The builder launch configuration could not be found.
655 The workaround is to first disable the builder for auto-builds and then rename the builder.
656 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=118294">118294</a>)</p>
657
658 <h4>Slow typing/saving of the Ant editor with imports that define numerous macrodefs</h4>
659 <p>The Ant editor is slow on saving with buildfiles that have <import> declarations of buildfiles that have numerous <macrodef>s.
660 See bugs <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=92640">92640</a> and <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=125117">125117</a> for possible workarounds</p>
661
662 <h4>Failure to run Ant builds on non-Windows platforms if Eclipse installed in location with spaces in the path</h4>
663 <p>Due to a bug in Ant 1.7.0, Ant builds will fail with an IllegalArgumentException if the Eclipse installation is in a location with spaces in the path.
664 Embedded usage of Ant builds, such as plug-in export will also fail.
665 See bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=187993">187993</a> for possible workarounds</p>
666
667 <h3>3.2.3 <a name="I-Platform-User-Assistance">Platform - User Assistance</a></h3>
668 <h4>Welcome page not displayed properly (Linux/Unix)</h4>
669 <p>The default Welcome implementation is HTML-based and requires a supported browser
670 in order to work. If no supported browser can be found, Welcome falls back to its
671 Forms-based implementation, which has a different (simpler) appearance. Consult the
672 <a href="http://www.eclipse.org/swt/faq.php#browserplatforms">SWT FAQ</a> for supported
673 browsers and setting up your browser to work with eclipse.
674 </p>
675
676 <h4>Help browser tool bar buttons do not work for some documents</h4>
677 <p>The Help browser's Print, Synchronize, and Bookmark buttons do not work for
678 pages that are not actually installed with the product. However, you can always
679 use the print command in the browser's context menu to print the page you're
680 reading. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=44216">44216</a>)</p>
681 <h4> Help documents not displayed
682 in a browser or very slow document loading (Windows only)</h4>
683
684 If your LAN settings are not properly configured for local host access, your
685 Help browser might open to a blank page or display an HTTP error instead of a
686 help page, or you may experience long delays when loading help documents. Your
687 system administrator can configure your LAN settings so that help documents can
688 be accessed from the local help server.
689 <blockquote>
690 <ol>
691 <li>In the Control Panel, open <b>Internet Options</b>, select the <b>Connections</b>
692 tab and choose <b>LAN Settings</b>.</li>
693 <li>If your host was configured to use DHCP for IP assignment, make sure
694 that the "Automatically detect settings" check box is cleared.</li>
695 <li>If you use a proxy server, ensure that the "Bypass proxy server
696 for local addresses" is selected.</li>
697 <li>In "Advanced" settings for proxies, add
698 "127.0.0.1;localhost" to the "Exceptions" if these
699 addresses are not listed.</li>
700 <li>If you are using an automatic configuration script for proxy
701 settings, and are not sure that the script is correct, clear the "Use
702 automatic configuration script" check box.</li>
703
704 </ol>
705 </blockquote>
706 <p>If the above steps do not fix your problem, try changing the port and host
707 properties on the <b>Help > Help Server</b> preference page. In general,
708 setting <code>host</code> to <code>localhost</code> or <code>127.0.0.1</code>
709
710 should work. Also, especially when running a firewall, you may want to specify
711 port 80 or some other firewall-friendly value. (bugs <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=7036">7036</a>,
712 <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=9418">9418</a>, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=11394">11394</a>)</p>
713 <h4> Working disconnected from
714 the network (Windows only)</h4>
715 If you are experiencing problems when not connected to the network, you must
716 install the loopback adapter from the Windows installation CD. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=831">831</a>)
717 <h4> Using Internet Explorer in
718 offline mode (Windows only)</h4>
719
720 If you have been using Internet Explorer in Offline mode, when you access the
721 help system you will get a message indicating that the web page you requested is
722 not available offline or a blank page will display. Click <b>Connect</b> or
723 deselect "Work Offline" in the Internet Explorer "File" menu
724 to return the system behavior to normal.
725 <h4>Help topics not highlighted in High Contrast mode (Windows only)</h4>
726 <p>Windows High Contrast settings are not consistently picked up by Internet
727 Explorer when they are set from the Accessibility Options utility as opposed to
728 when they are set using the predefined schemes. On Windows XP, it is recommended
729 to set High Contrast as follows: Right click the desktop, chose properties,
730 select Windows Classic style from the Windows and buttons drop down on the
731 Appearance tab, and choose your scheme (for example High Contrast Black) from
732 Color Scheme drop down. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=28609">28609</a>)</p>
733 <h4>Help browser displays a blank page</h4>
734
735 <p>If you see a help launched with a blank page, and no errors displayed, it can
736 be caused by a conflict between libraries in org.eclipse.tomcat plug-in and jars
737 optionally installed in JRE jre/lib/ext directory. To fix the problem, ensure
738 that the JRE used for running Eclipse does not contain any J2EE or Apache jars
739 in the jre/lib/ext directory. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=63970">63970</a>)</p>
740
741 <h3>3.2.4 <a name="I-Platform-UI">Platform - UI</a></h3>
742 <h4>High contrast settings</h4>
743 <p>Eclipse was tested for High Contrast using 1152 x 864 resolution in Windows
744 XP High Contrast mode. You can select this mode by selecting Accessibility
745 Options > Display > Use High Contrast from the Windows XP Control Panel
746 menu.</p>
747 <h4>Default text file encoding
748 may be detected incorrectly (Windows XP/2000 only)</h4>
749
750 <p><strong>Note</strong>: the bug report associated with this problem has been fixed. If you run Eclipse with JDK 1.5 or greater you should not have to use the workaround stated below any longer. However, the problem still exists when running Eclipse with JDK 1.4.x or lower, so in this case the workaround is still required . </p>
751 <p>The "Text file encoding" value displayed in the Preferences
752 dialog under "Editors" may be wrong on platforms running Windows XP
753 (or 2000) when the user locale and system locale differ. </p>
754 <p>Example of the manifestation of the bug: A Japanese user using Japanese
755 Windows 2000 works in New York, United States. The user has selected English
756 (United States) as the user locale. The "Text file encoding" value
757 displayed by Eclipse is incorrect: "Cp1252" (English). It should
758 display the system locale "MS932" (Japanese).</p>
759 <p>Workaround: The user can modify the user locale so that user locale and
760 system locale are identical. In the example above, this means the user should
761 set Japanese as the user locale. Then restart Eclipse. The "Text file
762 encoding" value will then be correct: "MS932" (Japanese).</p>
763
764 <p>For Windows XP:</p>
765 <ul>
766 <li>To check the system locale: Open the Control Panel. Go to Regional and
767 Language Options. Switch to the Advanced tab. The system locale is specified
768 in "Language for non-Unicode programs".</li>
769 <li>To change the user locale: Open the Control Panel. Go to Regional and
770 Language Options. The user locale can be modified by changing the language
771 in "Standards and formats".</li>
772 </ul>
773 <p>For Windows 2000:</p>
774 <ul>
775 <li>To check the system locale: Open the Control Panel. Go to Regional
776 Options. Look up the items in the General tab, inside the "Language
777 settings for the system" group. The system locale is the item marked as
778 (Default).</li>
779 <li>To change the user locale: Open the Control Panel. Go to Regional
780 Options. The user locale can be modified by changing the location in
781 "Settings for the current user".</li>
782
783 </ul>
784 <p>(bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=20641">20641</a>)</p>
785 <h4> Dirty state not tracked
786 properly for OLE documents (Windows only)</h4>
787 <p>The dirty state for an OLE document is not updated properly. This causes
788 Eclipse to prompt to save the contents of the editor when the document is
789 closed, even if the contents have already been saved. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=2564">2564</a>)</p>
790 <h4> OLE document crashes can
791 cause Eclipse to also crash (Windows only)</h4>
792 <p>If an OLE document crashes, Eclipse can crash, or the workbench menus can
793 become inconsistent.</p>
794 <h4>2.1 Presentation based workspaces incorrectly get new Min/Max behavior</h4>
795 <p>
796 Workspaces that are currently using the Eclipse 2.1 Presentation will incorrectly
797 'inherit' the new min/max behavior when opened with 3.3.
798 </p>
799 <p>
800 Workaround:</p>
801 <ol>
802 <li>Go to the 'Preferences -> Appearance' page, change the current presentation to 'Default' and select apply</li>
803 <li>Change it back to the 2.1 Presentation, select 'OK' and 'Yes' to the restart prompt</li>
804 </ol>
805 When the workbench re-opens the old min/max behaviour will be restored.
806 <h4>Toolbars only containing contributed controls exhibit display errors on Mac/Linux</h4>
807 <p>
808 Currently there is no way on the Max or Linux platforms to define the <b>height</b> for controls contributed to
809 toolbars, nor will those platforms respect the size returned by the control's <code>computeSize</code> method. If you
810 encounter this issue there is currently no truly viable workaround.
811 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=183003">183003</a>)
812 </p>
813
814
815 <h3>3.2.5 <a name="I-Platform-Text">Platform - Text</a></h3>
816 None.
817
818 <h3>3.2.6 <a name="I-Platform-SWT">Platform - SWT</a></h3>
819 <h4>Eclipse plug-in based on the SWT Browser throws exception</h4>
820 <p>The SWT Browser widget uses a platform-specific web browser to render HTML.
821 The org.eclipse.swt.SWTError exception ("No more handles") is thrown
822 on platforms that don't meet the requirements for running the Browser widget.
823 Supported platforms and prerequisites are listed on the SWT FAQ item <a href="http://www.eclipse.org/swt/faq.php#browserplatforms">
824 "Which platforms support the SWT Browser?"</a>.</p>
825
826 <h4>Crash when using the file dialog (Windows XP with SP2 only)</h4>
827 <p>With some versions of Synergy from Telelogic, Eclipse will crash when you try to open a file
828 dialog. This is due to a problem with the CMExplorer.dll. The workaround is to
829 upgrade to Synergy 6.4 (or higher) or to run <code>regsvr32 /u CMExplorer.dll</code> and
830 reboot (note that this will disable Active CM).
831 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=87798">87798</a>)</p>
832
833 <h4>Opening File Dialog crashes eclipse (Vista only)</h4>
834 <p>On Vista, launching eclipse using <code>-vmargs -Xmx[any size]</code> can crash eclipse when the FileDialog is opened.
835 The workaround is to use the default heap size, i.e. do not use the <code>-Xmx</code> VM args.
836 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=188317">188317</a>)</p>
837
838 <h4>Internet Explorer sometimes freezes on PDF documents with Acrobat Reader 6 (Windows only)</h4>
839 <p>With Acrobat Reader 6 or 7, some users have experienced an unresponsive user
840 interface for up to two minutes when closing a browser which is displaying a PDF document.
841 The workaround is to disable displaying PDF in the browser. In Adobe Reader
842 select Edit > Preferences... > Internet and uncheck 'Display PDF in browser'.
843 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=56184">56184</a>)</p>
844
845 <h4>Crash while editing text (Windows XP with SP2 only)</h4>
846 <p>Some users who have installed Service Pack 2 on Windows XP have experienced
847 crashes while using editors in Eclipse. The workaround is to place a working version
848 of Windows\System32\USP10.DLL in the Eclipse startup directory or uninstall
849 Service Pack 2.
850 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=56390">56390</a>)</p>
851
852 <h4>Input Method broken (Motif only)</h4>
853 <p>Some versions of RedHat Linux such as Fedora Core 3 and Enterprise Linux WS
854 release 4 use a new technology called IIIM (Intranet/Internet Input Method
855 Framework) to replace the old XIM (X input method). When running on these
856 new systems, Eclipse will crash if you attempt to enter any DBCS character. The
857 workaround is to use a XIM based input method such as chinput. This problem
858 may be fixed in newer releases of RedHat.
859 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=89722">89722</a>)</p>
860
861 <h4>Eclipse does not start on Linux-Motif with Xinerama and a UTF-8 locale</h4>
862 <p>The Linux-motif build of Eclipse does not launch properly when run on a
863 computer with Xinerama (provides support for dual head monitors) and a UTF-8
864 locale. The workaround for this problem is to change the locale to a non-UTF-8
865 value, or to disable Xinerama.
866 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=38843">38843</a>)
867 </p>
868
869 <h4>Eclipse hangs when pasting from an unresponsive application (GTK only)</h4>
870 <p>If the application that is supplying the clipboard material is unresponsive,
871 the paste operation hangs Eclipse for several minutes. This situation can be
872 encountered when copying from an Eclipse target workbench, suspending the target
873 workbench at a breakpoint and pasting into the hosting Eclipse workbench. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=44915">44915</a>)</p>
874
875 <h4>Unable to drag data between applications in simplified Chinese locale (Motif only)</h4>
876 <p>When configured for the simplified Chinese locale, it is not possible to
877 drag data between applications running on the Motif window system. This is a
878 known limitation of the Open Motif library. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=29777">29777</a>)</p>
879
880 <h4>Crash when attempting to launch file browser (AIX Motif only)</h4>
881 <p>There is a known AIX graphics bug affecting certain levels of AIX
882 releases. Ensure that the AIX install includes the necessary service updates as
883 described in the "Install notes/requirements for Eclipse on AIX"
884 attachment to Eclipse bug report number <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=34524">34524</a>.</p>
885
886 <h4>Available colors on 8-bit Linux (Linux only)</h4>
887 <p>Typically, in Gnome Linux installs running with 8-bit visuals (i.e. 256
888 color mode), before the Eclipse application is started there are no free colors.
889 This may mean that Eclipse is unable to allocate the default widget background
890 color, causing it to display a white background. The functionality, however, is
891 otherwise unaffected.</p>
892
893 <h4>IME-related crash (Linux Motif only)</h4>
894 <p>When using Linux Motif and GB18030 IME "chinput", Eclipse can
895 crash if the IME client window is left open when the parent window is disposed.
896 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=32045">32045</a>)</p>
897
898 <h4>IME converstion problem (Solaris GTK only)</h4>
899 <p>When typing Japanese text, the conversion to Kanji must be done one ideogram at
900 a time. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=226636">226636</a>)</p>
901
902 <h4>Using IBM J9 VM (Photon and AIX)</h4>
903 <p>On QNX Photon and IBM AIX, the SWT library will not be found when running
904 with an IBM J9 1.5 VM. This is a bug in the IBM J9 class library in version 1.5.
905 You can workaround this problem by adding the SWT library directory to your
906 LD_LIBRARY_PATH environment variable.</p>
907
908 <h4> gtk_init_check and X11 socket failure when using the IBM 1.4.2 JRE (GTK only)</h4>
909 <p>Under RHEL 3.1 with the IBM 1.4.2 JRE and a large number
910 of plugins, Eclipse may fail to launch with an exception from
911 <tt>gtk_init_check</tt> along with this error:</p>
912 <pre>
913 _X11TransSocketOpen: socket() failed for local
914 _X11TransSocketOpenCOTSClient: Unable to open socket for local
915 </pre>
916 <p>A workaround is to set the environment variable <tt>JAVA_HIGH_ZIPFDS</tt> to
917 a value of 500 before starting Eclipse. (bug
918 <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=106396">106396</a>)</p>
919
920 <h4>Key bindings can stop working on Debian (GTK+ only)</h4>
921 <p>On some versions of Debian, Eclipse key bindings may stop working. In this context
922 the only way to make the key bindings work again is to restart Eclipse.
923 </p><p>
924 The problem is that a focus issue exists in GTK+ 2.6.7 and earlier, for which SWT has
925 a workaround. This workaround is incompatible with the GTK+ 2.6.7 fix, so a GTK+ version
926 check is done at runtime to determine whether the workaround should be used or not.
927 However, Debian backported the GTK+ focus fix into their libgtk+2.0 (2.6.4-2) package,
928 so the SWT workaround and GTK+ fix are both incorrectly applied in this context.
929 </p><p>
930 To work around this problem, either get the Debian unstable version of GTK+, compile your
931 own GTK+, or hack SWT's Shell.gtk_realize(int) and change the version that it checks.
932 See SWT bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=107013">107013</a>
933 and GTK+ bug <a href="http://bugzilla.gnome.org/show_bug.cgi?id=109246">109246</a>
934 for more information.</p>
935
936 <h4>Browser does not display applets (Windows and OS X)</h4>
937 <p>The Browser widget cannot be used to display pages containing Java applets on Windows
938 and OS X, as a result of crashes that occur when attempting to launch a second JVM for the
939 applet that is in-process with the main process JVM. The workaround for clients wishing
940 to display web pages with Java applets is to launch an external web browser to do so with
941 <code>org.eclipse.swt.program.Program</code> (see bugs
942 <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=59506">59506</a> and
943 <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=100622">100622</a>).</p>
944
945 <h4>Eclipse hangs with earlier versions of Quicktime (Intel Mac OS X only)</h4>
946 <p>Some users reported encountering system hangs while using Eclipse on Intel-based Macs.
947 These hangs were traced to a problem in some versions of QuickTime, which has now been fixed.
948 Therefore, Eclipse users on Intel-based Macs should use Quicktime's update facilities to ensure
949 that their Quicktime version is at least 7.1.1. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=142892">142892</a>)
950 </p>
951
952 <h4>Typing in an editor crashes with IBM 1.5 VM (Linux GTK PPC only)</h4>
953 <p>When running on the IBM Java 5.0 VM, Eclipse crashes while the user is typing in an editor.
954 If using this VM you must disable the JIT with the -Xnojit vm argument to avoid the crashes
955 (see bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=116730">116730</a>).
956 The command line for launching Eclipse with this vm should be: <br>
957 <code>eclipse -vmargs -Dosgi.locking=none -Xnojit</code>
958 </p>
959
960 <h4>Eclipse won't start (Linux GTK PPC only)</h4>
961 <p>Eclipse fails to create a lock file with reason "No locks available".
962 To launch eclipse you must disable file locking using the osgi.locking property.
963 For example, you could launch eclipse as follows: <br>
964 <code>eclipse -vmargs -Dosgi.locking=none</code>
965 </p>
966
967 <h4>SWT_AWT bridge doesn't work (Mac OSX only)</h4>
968 <p>In order to use the SWT_AWT bridge on the Mac, OS X jre version 1.5.0 Release 5
969 (or greater) must be used.
970 </p>
971
972 <h4>Eclipse printing is disabled or Eclipse hangs when opening editor (GTK only)</h4>
973 <p>In order to print from eclipse on GTK, you need to have GTK+ version 2.10 or later.
974 In addition, at least two print backends must exist on the machine: file and lpr.
975 Assuming a that GTK was installed in /usr, the installed backends can be viewed at /usr/lib/gtk-2.0/2.10.0/printbackends.
976 </p>
977
978 <h4>SWT cannot be used with OS X JRE version 1.6 (Mac OSX only)</h4>
979 <p>OS X JRE version 1.6 assumes that pointers have a size of 64 bits, but SWT's Carbon
980 port only uses 32-bit pointers, so SWT and Eclipse cannot be used with OS X JRE version
981 1.6. The workaround is to use an earlier supported version of the OS X JRE.
982 </p>
983
984 <h4>Browser.setText() cannot be used with beta versions of Firefox 3.0/XULRunner 1.9</h4>
985 <p>As a result of a late interface change in the Firefox 3.0/XULRunner 1.9 development stream,
986 most beta versions of these applications cannot be used by the Browser if its <code>setText()</code>
987 API is used. This problem can be fixed by upgrading to the final release versions of these
988 applications. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=235020">235020</a>)
989 </p>
990
991 <h4>Strings may be truncated or incorrectly wrapped on RHEL5 (Linux GTK only)</h4>
992 <p>
993 Strings on wrapping Controls may not appear correctly in some locales on RHEL5 as a result
994 of a bug in Pango version 1.14.x. This problem can be fixed by upgrading the installed
995 Pango library to a version that is newer than 1.14.x. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=231951">231951</a>)
996 </p>
997
998 <h3>3.2.7 <a name="I-Platform-Team-CVS">Platform - Team - CVS</a></h3>
999 <p>The following are known problems with the CVS repository provider only, and
1000 do not apply to other repository providers. Additional information on how to use
1001 CVS from Eclipse can be found in the <a href="http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/platform-vcm-home/docs/online/cvs_features2.0/cvs-faq.html">Eclipse
1002 CVS FAQ</a>.</p>
1003 <h4> CVS server compatibility</h4>
1004 <p>The CVS plug-in parses messages returned from the CVS server. If the format
1005 of these messages is not as expected, some of the plug-in's functionality may be
1006 missing. The CVS plug-in is compatible with all stable 1.11.X builds of the CVS
1007 server, and should be compatible with future releases in that stream unless text
1008 message formats change (the last tested server was 1.11.22). As for the 1.12.X
1009 feature releases of CVS, the Eclipse CVS client has been tested with builds up
1010 to 1.12.13. However, future releases could easily break the Eclipse CVS client.
1011 Basic functionality, such as Checkout, Commit, and Update, should always work,
1012 but there may be problems with more advanced commands such as Synchronizing and
1013 Browsing the repository.</p>
1014
1015 <h4>SSH2 proxy settings lost upgrading to 3.3</h4>
1016 <p>CVS now uses the Platform proxy settings. As a result, any CVS proxy settings
1017 will be lost and must be re-entered on the General>Network Connections preference
1018 page. </p>
1019 <h4>Connection cannot be found after initially missing</h4>
1020 <p>If a connection initially fails due to a network problem, the connection may
1021 continue to fail even when the network problem is fixed. In order to establish
1022 the connection you must exit and restart Eclipse. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=9295">9295</a>)</p>
1023 <h4>"Received broken pipe signal" error from server</h4>
1024 <p>Eclipse sometimes performs multiple commands within a single connection to
1025 the server. This may cause problems with CVS servers that are running server
1026 scripts in response to certain commands. (bugs <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=23575">23575</a>
1027 and <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=23581">23581</a>)</p>
1028
1029 <h4>"Terminated with fatal signal 10" error from server</h4>
1030 <p>There is a bug in the CVS server related to some compression levels. If you
1031 get this error, changing the compression level on the CVS preference page may
1032 help. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=15724">15724</a>)</p>
1033 <h4>"Unknown response" error using ext connection method</h4>
1034 <p>There are a few situations that can result in an "Unknown response"
1035 error messages when using the ext connection method. One situation involves
1036 using an external communications client (e.g. rsh or ssh) that adds CRs to the
1037 communications channel (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=21180">21180</a>).
1038 Another involves Eclipse not properly reading the stderr output of the external
1039 communications tool. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=11633">11633</a>)</p>
1040
1041 <h4>A disabled CVS capability may not be auto-enabled in existing workspaces</h4>
1042 <p>New in 3.0 is the ability to disable capabilities and the CVS support in
1043 Eclipse can be disabled. However, for backwards compatibility the CVS capability
1044 is auto-enabled in existing workspaces that already contain CVS projects. The
1045 auto-enabling function may not run if the team support plugin is not loaded at
1046 startup. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=66977">66977</a>)</p>
1047 <h4>Builder output files may appear as changed</h4>
1048 <p>When folders containing build output are shared they may get improperly
1049 marked as dirty when build output is generated.</p>
1050
1051 <h3>3.2.8 <a name="I-Platform-Install-Update">Platform - Install/Update</a></h3>
1052 <h4>Manually installing features and plug-ins on a FAT file system (Windows only)</h4>
1053
1054 <p>When features and plug-ins are manually installed on top of an Eclipse-based
1055 product install located on a FAT file system that has already been run at least
1056 once, the product must be explicitly restarted with -clean. That is,</p>
1057 <pre>eclipse.exe -clean
1058 </pre>
1059
1060 <h4>Connecting to untrusted sites using https</h4>
1061 <p>You cannot install or update software from a site using https whose certificate
1062 is not chained to a trusted root certificate in your local certificate store. This typically
1063 means the server is using a self-signed certificate, or a certificate authenticated by
1064 an unknown third party.</p>
1065
1066 <h4>Removing a link file does not uninstall the corresponding extension location</h4>
1067 <p>If you have an extension location in an Eclipse-based application that is connected
1068 to your configuration via a link file, the extension is not removed when the link is deleted.
1069 The workaround is to move or delete the extension location, and restart the platform
1070 with the -clean command line argument. You can then restore or move back the
1071 extension location content to its original location (bug <A HREF="https://bugs.eclipse.org/bugs/show_bug.cgi?id=232094">232094</A>).
1072 </p>
1073
1074 <p><B>Extension location is lost if the install path changes</B></p>
1075 <P>A previously configured extension location may be temporarily removed if the install is moved or mounted
1076 under a different path. This only happens when the link file that configures the
1077 extension location uses a relative path that points to a directory under the Eclipse
1078 install. On a second startup using the same install path, the extension location
1079 is added again (bug <A HREF="https://bugs.eclipse.org/bugs/show_bug.cgi?id=95403">95403</A>). <BR></P>
1080
1081 <h3>3.2.9 <a name="I-Platform-Debug">Platform - Debug</a></h3>
1082 <p>None. (Known problems with the Java debugger appear below in the <a href="#I-JDT">JDT</a>
1083 section.)</p>
1084
1085 <h3>3.2.10 <a name="I-Platform-Compare">Platform - Compare</a></h3>
1086 <p>None.</p>
1087
1088 <h3>3.3 <a name="I-JDT">Java development tools (JDT)</a></h3>
1089
1090 <h4>Multiple regions formatting in a given source snippet</h4>
1091 In version 3.4, the new API method <code>org.eclipse.jdt.core.formatter.CodeFormatter.format(int, String, IRegion[], int, String)</code>
1092 has been added to allow the formatting of several regions in a source snippet with a single pass.<br>
1093 Even if specified, this method does not currently accept comments of the following kinds:
1094 <ul>
1095 <li><code>org.eclipse.jdt.core.formatter.CodeFormatter#K_SINGLE_LINE_COMMENT</code></li>
1096 <li><code>org.eclipse.jdt.core.formatter.CodeFormatter#K_MULTI_LINE_COMMENT</code></li>
1097 <li><code>org.eclipse.jdt.core.formatter.CodeFormatter#K_JAVA_DOC</code></li>
1098 </ul>
1099 This will be fixed in a future release (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=233967">233967</a>).
1100
1101 <h4>Searching for constant field references</h4>
1102 <p>Search does not find references to constant fields inside binaries because
1103 the Java Language Specification mandates that constant field values be inlined
1104 in the class file's byte codes, leaving no trace of a field reference. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=12044">12044</a>)</p>
1105
1106 <h4> Cut, copy, paste not working
1107 for linked resources in views showing Java elements</h4>
1108 <p>The cut, copy, and paste actions do not work for linked files and folders
1109 appearing in views that show Java elements, including the Package Explorer. The
1110 workaround is to use these actions from the Navigator view instead. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=34568">34568</a>)</p>
1111 <h4> Java working sets not
1112 working correctly for elements from JRE system library container</h4>
1113 <p>Applying a working set consisting entirely of elements from the JRE System
1114 library container as a filter to the packages view might result in an empty
1115 Package Explorer. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=35395">35395</a>)</p>
1116
1117 <h4>Cannot generate Javadoc for packages with GB18030 characters in the name</h4>
1118 <p>Most class libraries do not properly support the creation of a system
1119 process (via <code>java.lang.Runtime.exec(...)</code>) when the specified
1120 command line contains GB18030 characters. Since Javadoc is created using the
1121 Javadoc executable provided with the JDK, generating Javadoc fails if the
1122 package or class name contains GB18030 characters. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=32215">32215</a>)</p>
1123
1124 <h4>Side effects of Step into Selection and Run to Line</h4>
1125 <p>The actions "Step into Selection" and "Run to Line"
1126 optimistically set breakpoints on the line the user has chosen to step into or
1127 run to. However, the debugger can not determine if or when execution will ever
1128 reach the chosen line. The breakpoints set by the underlying implementation are
1129 not visible to the user and can cause execution to suspend unexpectedly at a
1130 later time, when the associated line is actually executed. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=51507">51507</a>)</p>
1131 <h4>Default locale initialization incorrect</h4>
1132 <p>The default locale is generally initialized from the settings in the
1133 operating system when a target VM is launched. However, when using javaw.exe on
1134 JDK1.4.2, Windows XP, the default locale is incorrectly initialized to en_US, no
1135 matter what the operating system settings are. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=65945">65945</a>)</p>
1136 <h4>Suspend on uncaught exception overrides exception breakpoint location filters</h4>
1137 <p>Exception breakpoints can be configured with location filters (inclusive and
1138 exclusive). When an unchecked exception is configured to <b>not</b> suspend
1139 execution in a specific class, execution will still suspend when the user preference
1140 to suspend on uncaught exceptions is on. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=66770">66770</a>)</p>
1141
1142 <h4>Running Java programs with non-Latin-1 characters in package or class names</h4>
1143 You get a <code>java.lang.NoClassDefFoundError</code> when running Java
1144 programs with non-Latin characters in the package or class names. The workaround
1145 is to package the class files as a JAR file and run the program out of the JAR
1146 and not from the file system directly. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=4181">4181</a>)
1147
1148 <h4>Cannot run or debug class in
1149 a project with GB18030 characters in project name</h4>
1150 <p>Most class libraries do not properly support the creation of a system
1151 process (via <code>java.lang.Runtime.exec(...)</code>) when the specified
1152 command line contains GB18030 characters. This limitation means the debugger
1153 cannot launch applications when the command line it generates contains GB18030
1154 characters. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=32206">32206</a>)</p>
1155 <h4>Cannot detect installed JRE with GB18030 characters in path name</h4>
1156 <p>Automatic JRE detection fails when the JRE is stored in a directory
1157 containing GB18030 characters in its name. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=33844">33844</a>)</p>
1158 <h4> Unable to debug stack
1159 overflows</h4>
1160
1161 <p>If a debug session suspends on a <code>java.lang.StackOverflowError</code>
1162 exception (due to an exception breakpoint), the debugger may not be able to
1163 retrieve any debug information from the target JVM. As well, the debugger may
1164 not be able to reliably interact with the target JVM past this point. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=19217">19217</a>)</p>
1165 <h4> Evaluation limitation</h4>
1166 <p>The debugger uses threads in the target JVM to perform evaluations (both
1167 explicit evaluations that the user requests, and implicit evaluations such as <code>toString()</code>
1168 invocations in the <b>Variables</b> view). The Java Debug Interface (JDI)
1169 requires that the thread in which an evaluation is performed be suspended by a
1170 user event (that is, a breakpoint or step request). Evaluations cannot be
1171 performed on threads suspended by the suspend action. As well, when a breakpoint
1172 is configured to suspend the JVM rather than just the individual thread, the
1173 threads which did not encounter the breakpoint are not in a valid state to
1174 perform an evaluation. When an evaluation is attempted in a thread that is not
1175 in a valid state to perform an evaluation, an error message will appear to the
1176 effect of "Thread must be suspended by step or breakpoint to perform method
1177 invocation". (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=34440">34440</a>)</p>
1178
1179 <h4> Missing debug attributes</h4>
1180 The debugger requires that class files be compiled with debug attributes if
1181 it is to be able to display line numbers and local variables. Quite often, class
1182 libraries (for example, "<code>rt.jar</code>") are compiled without
1183 complete debug attributes, and thus local variables and method arguments for
1184 those classes are not visible in the debugger.
1185 <h4> Using Hot Code Replace</h4>
1186 <p>Hot code replace is supported on JDK 1.4.x VMs, and IBM J9 VMs. The debugger
1187 will attempt to replace all class files that change in the workspace as the user
1188 edits and builds source code. However, hot code replace is limited to changes
1189 that a particular virtual machine implementation supports. For example, changes
1190 within existing methods may be supported, but the addition or removal of members
1191 may not be.</p>
1192 <p>Note that hot code replace and stepping on JDK 1.4.0 VMs was unreliable. The
1193 underlying VM problems were fixed in JDK 1.4.1, and later.</p>
1194 <h4> Scrapbook</h4>
1195 Setting a breakpoint inside a scrapbook page is not supported.
1196
1197 <p>When a snippet is run in the scrapbook which directly or indirectly calls <code>System.exit(int)</code>,
1198 the evaluation cannot be completed, and will result in a stack trace for a <code>com.sun.jdi.VMDisconnectedException</code>
1199 being displayed in the scrapbook editor.</p>
1200 <p>Terminating a scrapbook page while it is performing an evaluation results
1201 in a <code>com.sun.jdi.VMDisconnectedException</code> being displayed in the
1202 scrapbook editor.</p>
1203 <h4> Debugging over slow
1204 connections</h4>
1205 A global Java debug preference specifies the debugger timeout, which is the
1206 maximum amount of time the debugger waits for a response from the target VM
1207 after making a request of that VM. Slow connections may require that this value
1208 be increased. The timeout value can be edited from the <b>Java > Debug </b>preference
1209 page. Changing the timeout value only effects subsequently launched VM, not VMs
1210 that are already running.
1211
1212 <h4> Updating of inspected values</h4>
1213 When inspecting the result of an evaluated expression in the debugger, it is
1214 important to note that the result displayed is the result of that expression at
1215 the time it was evaluated. For example, when inspecting a simple integer counter
1216 (primitive data type), the value displayed in the Expressions view is the value
1217 when the expression was evaluated. As the counter is changed in the running
1218 program, the inspected result will not change (since the view is not displaying
1219 the value bound to a variable - it is displaying the value of an expression, and
1220 the value of a primitive data type cannot change). However, if an expression
1221 results in an object, fields of that object will be updated in the inspector as
1222 they change in the running program (since the value bound to fields in an object
1223 can change).
1224 <h4> Stepping over native methods
1225 that perform I/O</h4>
1226 When the debugger steps over native methods that perform I/O to <code>System.out</code>
1227 or <code>System.err</code>, the output may not appear immediately unless the
1228 native performs a flush on the output buffer.
1229 <h4> VM and process termination
1230 running on IBM 1.3 JVM on Linux (Linux only)</h4>
1231 Terminating a launch, debug target, or system process associated with a debug
1232 target running on the IBM 1.3 JVM on the Linux platform does not work when the
1233 associated debug target has a suspended thread. To remove such debug targets
1234 from the debug UI, select <b>Terminate and Remove</b> from the debug view's
1235 pop-up menu (or use the shortcut "delete" key). Associated system
1236 processes in the OS may not be properly cleaned up. If a debug target has no
1237 suspended threads, termination works properly. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=1631">1631</a>)
1238
1239
1240 <h4> Memory View (Linux only)</h4>
1241 The feature to automatically load segments of memory while scrolling in the Memory
1242 view does not work on Linux. Instead the user must use the "Next Page" and "Previous Page" actions
1243 to manually load memory segments (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=74559">74559</a>)
1244
1245 <h4>Java 6 Annotation Processing</h4>
1246 Java 6 annotation processors are supported in the batch compiler and in the IDE, with
1247 some limitations. Java 6 processors are only executed during a build, not while editing (bug
1248 <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=188558">188558</a>). Some methods
1249 in the processing API are unimplemented when compiling within the IDE, and will throw
1250 UnsupportedOperationException.
1251
1252 <h3>3.4 <a name="I-PDE">Plug-in Development Environment (PDE)</a></h3>
1253 <h4>Feature manifest editor does not preserve all comments</h4>
1254
1255 <p>When a non-source page of the feature manifest editor is used, PDE will convert
1256 changes back into XML by regenerating the file. Although the overall content and
1257 most of the comments are preserved, some comments may be lost. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=59502">59502</a>)</p>
1258 <h4>PDE will not unzip source zips of some plug-ins</h4>
1259 <p>In the plug-in import wizard, when you choose to import plug-ins as
1260 "projects with source folders", PDE will not unzip the source for the
1261 org.apache.ant, org.eclipse.core.runtime.compatibility.registry, org.eclipse.osgi.util and org.eclipse.osgi.services. This is
1262 because the source ZIPs contains code that will not compile when unzipped as it
1263 requires additional JARs that are not part of the SDK. To avoid the creation of
1264 plug-in projects that won't compile, PDE will import these plug-ins as binary
1265 and attach source, so you would still be able to read the source, you just won't
1266 be able to modify it. Also, PDE will not unzip the source for the
1267 org.eclipse.swt plug-ins. In this case, it is because, when shipped, the swt
1268 code is spread across a plug-in and a fragment, and when unzipped, it will
1269 require circular dependencies between the plug-in and fragment projects. These
1270 circular dependencies are at minimum marked as warnings by the JDT compiler and
1271 may result in unpredictable build behavior. Therefore, PDE always imports
1272 org.eclipse.swt as binary with source attached. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=66314">66314</a>)</p>
1273
1274 <h4>Emacs key bindings do not
1275 work in manifest editor fields</h4>
1276 <p>Non-default key bindings currently do not work in fields on non-source
1277 pages of the PDE manifest editors. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=19482">19482</a>)</p>
1278 <h4>Plug-in import wizard does
1279 not allow plug-ins of different versions to be imported</h4>
1280 <p>The Eclipse platform allows two plug-ins with the same ID but different
1281 versions to coexist if the only thing they contribute is run-time libraries.
1282 However, PDE cannot handle these plug-ins because it creates project names using
1283 plug-in IDs during binary project import. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=18500">18500</a>)</p>
1284 <h4>Export of plug-in may silently drop classes</h4>
1285 <p>When exporting a plug-in using the plug-in, feature or product wizards, some classes
1286 might be dropped from the resulting archive if their fully qualified name is too long.
1287 This typical path limitation can be worked around by creating the jar of the problematic
1288 plug-in by using the Jar export wizard.
1289 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=97150">97150</a>)</p>
1290
1291 <h4>Compilation errors when exporting projects not stored outside of the workspace</h4>
1292 <p>When exporting multiple plug-ins and one is stored outside of the workspace,
1293 compile errors occurs on export. To work around the problem, you can either export
1294 the plug-ins one by one, or change their location.
1295 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=98579">98579</a>)</p>
1296
1297 <h4>Headless build needs to be run from a fully qualified path</h4>
1298 <p>When running a headless build using the scripts provided by pde build, the properties <code>builder</code>
1299 and <code>buildDirectory</code> must refer to a fully qualified path.
1300 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=139554">139554</a>)
1301 </p>
1302
1303 <h4>Target Platform only sees installed plug-ins</h4>
1304 <p>With the new p2 provisioning system in 3.4, PDE introduced a preference to control how target platforms are built.
1305 By default, this preference is on if your target equals your host, otherwise it's off. When this preference is enabled, PDE attempts to
1306 read a target platform's configuration and build the target platform based in the target's list of installed plug-ins. If a configuration
1307 can't be found (a bundles.info or platform.xml file), PDE will simply manually scan the target directory and populate the target platform's
1308 list of plug-ins.
1309 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=226037">226037</a> and bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=225148">225148</a>)
1310 </p>
1311
1312 <h4>Delta pack is not seen by PDE when installed</h4>
1313 <p>If you're using the delta pack, the target platform preference for building a target based on the target's installed plug-ins must be checked off.
1314 This is because a target's runtime configuration only contains plug-ins specific to the platform it's running on.
1315 (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=230146">230146</a>)
1316 </p>
1317
1318 <h2>4. <a name="Running Eclipse">Running Eclipse</a></h2>
1319 <p>After installing the Eclipse SDK in a directory, you can start the Workbench
1320 by running the Eclipse executable included with the release (you also need a 1.4.2
1321 JRE, not included with the Eclipse SDK). On Windows, the executable file is called <samp>eclipse.exe</samp>,
1322 and is located in the <code>eclipse</code> sub-directory of the install. If
1323 installed at <code>c:\eclipse-SDK-3.4-win32</code>, the executable is <code>c:\eclipse-SDK-3.4-win32\eclipse\eclipse.exe</code>.
1324
1325 <b>Note:</b> Set-up on most other operating environments is analogous. Special
1326 instructions for Mac OS X are listed <a href="#macosx">below</a>.</p>
1327
1328 <h3>Allocating enough memory and solving OutOfMemoryErrors</h3>
1329 <p>By default, Eclipse will allocate up to 256 megabytes of Java heap memory. This should
1330 be ample for all typical development tasks. However, depending on the JRE
1331 that you are running, the number of additional plug-ins you are using, and
1332 the number of files you will be working with, you could conceivably have to increase this amount.
1333 Eclipse allows you to pass arguments directly to the Java VM using the
1334 <code>-vmargs</code> command line argument, which must follow all other Eclipse specific arguments.
1335 Thus, to increase the available heap memory, you would typically use:</p>
1336 <blockquote>
1337 <p><code>eclipse -vmargs -Xmx<memory size></code></p>
1338 </blockquote>
1339 <p>with the <code><memory size></code> value set to greater than
1340 "256M" (256 megabytes -- the default).
1341 </p>
1342 <p>
1343 When using a Sun VM, you may also need to increase the size of the permanent
1344 generation memory. The default maximum is 64 megabytes, but more may
1345 be needed depending on your plug-in configuration and use. When the VM runs
1346 out of permanent generation memory, it may crash or hang during class loading.
1347 This failure is less common when using Sun JRE version 1.5.0_07 or greater.
1348 The maximum permanent generation size is increased using the -XX:MaxPermSize=<memory size> argument:</p>
1349 <blockquote>
1350 <p><code>eclipse -vmargs -XX:MaxPermSize=<memory size></code></p>
1351 </blockquote>
1352 <p>This argument may not be available for all VM versions and platforms; consult your VM documentation
1353 for more details.
1354 </p>
1355 <p>
1356 Note that setting memory sizes to be larger than the amount of available physical
1357 memory on your machine will cause Java to "thrash" as it copies objects
1358 back and forth to virtual memory, which will severely degrade your performance.
1359 </p>
1360 <h3>Selecting a workspace</h3>
1361 <p>When the Workbench is launched, the first thing you see is a
1362 dialog that allows you to select where the workspace will be located. The
1363 workspace is the directory where your work will be stored.
1364 If you do not specify otherwise, Eclipse creates the workspace in your
1365 user directory.
1366 This workspace directory is used as the default content area for your projects
1367 as well as for holding any required metadata. For shared or multi-workspace
1368 installs you must explicitly specify the location for your workspace using the
1369 dialog (or via the "<code>-data</code>" command line argument).</p>
1370 <h3>Specifying the Java virtual machine</h3>
1371 <p>Here is a typical Eclipse command line: </p>
1372
1373 <blockquote>
1374 <p><code>eclipse -vm c:\jdk1.4.2\jre\bin\javaw</code></p>
1375 </blockquote>
1376 <p><i>Tip:</i> It's generally a good idea to explicitly specify which Java VM to
1377 use when running Eclipse. This is achieved with the "<code>-vm</code>"
1378 command line argument as illustrated above. If you don't use "<code>-vm</code>",
1379 Eclipse will look on the O/S path. When you install other Java-based products,
1380 they may change your path and could result in a different Java VM being used
1381 when you next launch Eclipse.</p>
1382 <p>To create a Windows shortcut to an installed Eclipse:</p>
1383 <ol>
1384 <li>Navigate to <code>eclipse.exe</code> in Windows Explorer and use Create
1385 Shortcut on the content menu.</li>
1386 <li>Select the shortcut and edit its Properties. In the Target: field append
1387 the command line arguments.</li>
1388 </ol>
1389 <p>Opening this shortcut launches Eclipse. (You can drag the shortcut to the
1390 Windows Desktop if you want to keep it in easy reach.)</p>
1391
1392 <h3><a name="macosx">Mac OS X</a></h3>
1393 <p>On Mac OS X, you start Eclipse by double clicking the Eclipse application. If you need to
1394 pass arguments to Eclipse, you'll have to edit the <code>eclipse.ini</code> file
1395 inside the Eclipse application bundle: select the Eclipse application bundle icon while holding down the Control Key.
1396 This will present you with a popup menu. Select "Show Package Contents" in the popup menu.
1397 Locate <code>eclipse.ini</code> file in the <code>Contents/MacOS</code> sub-folder and open it with your favorite text editor to edit the command line options.
1398 </p>
1399
1400 <p>
1401 On MacOS X you can only launch a UI program more then once if you have separate
1402 copies of the program on disk. The reason for this behavior is that every UI
1403 application on Mac can open multiple documents, so typically there is no need
1404 to open a program twice. Since Eclipse cannot open more than one workspace, this means you have to make
1405 a copy of the Eclipse install if you want to open more then one workspace at
1406 the same time (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=139319">139319</a>).
1407 </p>
1408
1409 <p>If you need to launch Eclipse from the command line, you can use the symbolic link "eclipse" in the
1410 top-level eclipse folder. It refers to the eclipse executable inside the application bundle and takes
1411 the same arguments as "eclipse.exe" on other platforms.
1412 </p>
1413 <p>On Mac OS X 10.4 and later, you may notice a slow down when working with significant
1414 numbers of resources if you allow Spotlight to index your workspace. To prevent this, start
1415 System Preferences, select the Spotlight icon, then the Privacy tab, then click the Add button
1416 ("+") and find your workspace directory in the dialog that appears.</p>
1417 <h3><a name="SharedInstall">Shared Install</a></h3>
1418 <p>The startup speed of a shared install can be improved if proper cache information is stored in the shared
1419 install area. To achieve this, after unzipping Eclipse distribution, run Eclipse once with the "-initialize"
1420 option from an account that has a write access to the install directory.</p>
1421 <h2>5. <a name="Upgrading"></a>Upgrading Workspace from a Previous Release</h2>
1422
1423 <h3>Users who don't use "-data"</h3>
1424 <p>If you weren't previously using "-data" to specify your workspace,
1425 follow these steps to upgrade:</p>
1426
1427 <ol>
1428 <li>Find the workspace directory used by your old version of Eclipse.
1429 Typically this is located inside the directory in which Eclipse was
1430 installed in a sub-directory called "<code>workspace</code>". If
1431 you are using a shortcut or script to launch Eclipse, then it will be under
1432 the current working directory of that shortcut or script in a sub-directory
1433 called "workspace". For Windows users, this is specified by the
1434 "Start in:" argument in your shortcut properties.</li>
1435 <li>Copy this workspace directory to a new, empty location outside of any
1436 Eclipse install directory.</li>
1437 <li>Install the new version of Eclipse in a new location, separate from any
1438 old version of Eclipse.</li>
1439
1440 <li>If you had installed additional features and plug-ins into your old
1441 Eclipse, you should re-install them in the new Eclipse.</li>
1442 <li>Start this new version of Eclipse and select
1443 this location using the workspace chooser dialog at startup (or use "<code>-data</code>"
1444 command line argument to pre-select the workspace location).</li>
1445 </ol>
1446 <h3>Users who do use "-data"</h3>
1447 <p>If you were previously using the "<code>-data</code>" argument to
1448 start Eclipse, your upgrade path is much easier:</p>
1449
1450 <ol>
1451 <li>Optionally copy your workspace directory to a new, empty location outside of any
1452 Eclipse install directory as a backup.</li>
1453 <li>Install the new version of Eclipse in a new location, separate from any
1454 old versions of Eclipse.</li>
1455 <li>If you had installed additional features and plug-ins into your old
1456 Eclipse, you should re-install them in the new Eclipse.</li>
1457 <li>Start this new version of Eclipse and select this location using the workspace chooser dialog at
1458 startup (or use "<code>-data</code>"
1459 command line argument to pre-select the workspace location).</li>
1460 </ol>
1461 <p><i>Note:</i> Copying your workspace is recommended because,
1462 after you've upgraded your workspace, you won't be able to use it
1463 again with an older version of Eclipse. If you ever want to go "back in
1464 time" to an earlier release, you will need that backup.</p>
1465
1466
1467 <h2>6. <a name="Interoperability with Previous Releases">Interoperability with
1468 Previous Releases</a></h2>
1469 <h3>6.1 Interoperability of Release 3.4 with previous releases</h3>
1470 <h4>Sharing projects between heterogeneous Eclipse 3.4 and 3.3</h4>
1471 <p>Special care is required when a project in a team repository is being loaded
1472 and operated on by developers using Eclipse-based products based on different
1473 feature or plug-in versions. The general problem is that the existence,
1474 contents, and interpretation of metadata files in the workspaces may be specific
1475 to a particular feature or plug-in version, and differ between versions. The
1476 workspace compatibility guarantees only cover cases where all developers upgrade
1477 their Eclipse workspaces in lock step. In those cases there should be no problem
1478 with shared metadata. However, when some developers are working in Eclipse 3.4
1479 while others are working in Eclipse 3.3, there are no such guarantees.
1480 This section provides advice for what to do and not to do. It addresses the
1481 specific issues with the Eclipse SDK.</p>
1482
1483 <p>The typical failure mode is noticed by the 3.4 user. 3.4 metadata is lost
1484 when a 3.3 user saves changes and then commits the updated metadata files to the
1485 repository. Here's how things typically go awry:</p>
1486 <ul>
1487 <li>A user working in Eclipse 3.4 creates or modifies a project in a way that
1488 results in changes to a shared metadata file that rely on 3.4-specific
1489 information. The user then commits the updated project files, including the
1490 shared metadata file, to the shared repository.</li>
1491 <li>Another user working in Eclipse 3.3 shares this project from the same
1492 repository. The 3.4-specific information in the shared metadata file is not
1493 understood by Eclipse 3.3, and is generally discarded or ignored without
1494 warning. The user modifies the project in a way that results in changes to
1495 the shared metadata file, causing the shared metadata file to be rewritten
1496 without any of the 3.4-specific information. The user commits the updated
1497 project files, including the shared metadata file, to the shared repository.
1498 The user is generally unaware that shared information has just been lost as
1499 a result of their actions.</li>
1500 <li>A user working in Eclipse 3.4 picks up the changes to a project from the
1501 shared repository, including the updated shared metadata file. The user may
1502 be unaware that they have just taken a retrograde step until later when
1503 things start to malfunction.</li>
1504 </ul>
1505 <p>Here are some things to watch out for when sharing projects between
1506 Eclipse 3.4 and Eclipse 3.1 or earlier:</p>
1507 <ul>
1508 <li><b>Linked resources in the .project file</b><br>
1509 Eclipse 3.4 supports creating linked resources at arbitrary depth within a project,
1510 and supports creating linked resources referring to other file systems. Neither of
1511 these scenarios are supported in Eclipse 3.1 or earlier. If such linked resources
1512 are created in 3.4, and the project is subsequently loaded into an Eclipse 3.1
1513 or earlier workspace, these links will not be recognized. Recommendation:
1514 avoid creating links at arbitrary depth or to other file systems where project
1515 compatibility with Eclipse 3.1 or earlier is required.</li>
1516 </ul>
1517 <h4>Using Eclipse 3.4 to develop plug-ins that work in Eclipse 3.3</h4>
1518 <p>It is also possible (and reasonable) to use Eclipse 3.4 to develop a plug-in
1519 intended to work in Eclipse 3.3 or earlier. Use the <b>Plug-in Development >
1520 Target Platform </b>preference page to locate non-workspace plug-ins in an Eclipse
1521 3.3 install. This ensures that the code for your plug-in is being compiled and
1522 tested against Eclipse 3.3 APIs, extension points, and plug-ins. (The above
1523 list of concerns do not apply since they affect the layout and interpretation
1524 of files in the plug-in <i>project</i> but none affect the actual deployed form
1525 of the plug-in.)</p>
1526
1527 <hr>
1528 <p>Sun, Solaris, Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc.
1529 in the United States, other countries, or both.</p>
1530 <p>IBM is a trademark of International Business Machines Corporation in the
1531 United States, other countries, or both.</p>
1532 <p>Microsoft, Windows, Windows NT, Vista, and the Windows logo are trademarks of
1533 Microsoft Corporation in the United States, other countries, or both.</p>
1534 <p>Apple and Mac OS are trademarks of Apple Computer, Inc., registered in the
1535 U.S. and other countries.</p>
1536 <p>QNX, Neutrino, and Photon are trademarks or registered trademarks of QNX
1537 Software Systems Ltd.</p>
1538 <p>Other company, product, and service names may be trademarks or service marks
1539 of others.</p>
1540 <p>(c) Copyright IBM Corp. and others 2008</p>
1541
1542 <h2><a name="Appendix1">Appendix 1: Execution Environment by Plug-in</a></h2>
1543
1544 <p>In the table below, the "3.4 EE" ("3.4 Execution Environment") column
1545 indicates the minimum Java class library requirements of each plug-in
1546 for the 3.4 release, where the value is one of:</p>
1547 <table border="0" width="90%">
1548 <tbody>
1549 <tr>
1550 <td align="center"><b>Entry</b></td>
1551 <td align="left"><b>Meaning</b></td>
1552 </tr>
1553 <tr>
1554 <td>
1555 <div align="center"><strong>M1.0</strong></div>
1556 </td>
1557 <td>OSGi Minimum Execution Environment 1.0 - This is a subset of
1558 the J2ME Foundation class libraries defined by OSGi to be the base
1559 for framework implementations. See the OSGi specification for more
1560 details.</td>
1561 </tr>
1562 <tr>
1563 <td width="9%">
1564 <div align="center"><strong>M1.1</strong></div>
1565 </td>
1566 <td width="91%">OSGi Minimum Execution Environment 1.1 - This is a
1567 subset of the J2ME Foundation class libraries defined by OSGi to
1568 be the base for framework implementations. See the OSGi
1569 specification for more details.</td>
1570 </tr>
1571 <tr>
1572 <td>
1573 <div align="center"><strong>F1.0</strong></div>
1574 </td>
1575 <td>J2ME Foundation 1.0 - indicates that the plug-in can only be
1576 run on Foundation 1.0 or greater. Note that with the exception of
1577 some MicroEdition IO classes, Foundation 1.0 is a subset of J2SE
1578 1.3.</td>
1579 </tr>
1580 <tr>
1581 <td>
1582 <div align="center"><strong>F1.1</strong></div>
1583 </td>
1584 <td>J2ME Foundation 1.1 - indicates that the plug-in can only be
1585 run on Foundation 1.1 or greater. Note that with the exception of
1586 some MicroEdition IO classes, Foundation 1.1 is a subset of J2SE
1587 1.4.</td>
1588 </tr>
1589 <tr>
1590 <td>
1591 <div align="center"><strong>1.2</strong></div>
1592 </td>
1593 <td>J2SE 1.2 - indicates that the plug-in can only be run on JSE
1594 1.2 or greater.</td>
1595 </tr>
1596 <tr>
1597 <td>
1598 <div align="center"><strong>1.3</strong></div>
1599 </td>
1600 <td>J2SE 1.3 - indicates that the plug-in can only be run on JSE
1601 1.3 or greater.</td>
1602 </tr>
1603 <tr>
1604 <td>
1605 <div align="center"><strong>1.4</strong></div>
1606 </td>
1607 <td>J2SE 1.4 - indicates that the plug-in can only be run on JSE
1608 1.4 or greater.</td>
1609 </tr>
1610 <tr>
1611 <td>
1612 <div align="center"><strong>1.4/1.5</strong></div>
1613 </td>
1614 <td>Indicates that the plug-in can run on JSE
1615 1.4 or greater, but provides enhanced functionality when run on J2SE 5.0.</td>
1616 </tr>
1617 <tr>
1618 <td>
1619 <div align="center"><strong>1.5</strong></div>
1620 </td>
1621 <td>J2SE 5.0 - indicates that the plug-in can only be run on JSE
1622 5.0 or greater.</td>
1623 </tr>
1624 <tr>
1625 <td>
1626 <div align="center"><strong>1.6</strong></div>
1627 </td>
1628 <td>J2SE 6.0 - indicates that the plug-in can only be run on JSE
1629 6.0 or greater.</td>
1630 </tr>
1631 <tr>
1632 <td align="center"><b>n/a</b></td>
1633 <td>Not applicable (for example plug-ins that do not contain Java code)</td>
1634 </tr>
1635 </tbody>
1636 </table>
1637 <br>
1638 <b>Table of minimum execution environments by plug-in.</b> <br>
1639 <table border="1">
1640 <tbody>
1641 <tr>
1642 <td width="290"><strong>Plug-in</strong></td>
1643 <td width="60"><div align="center">
1644
1645 <p align="center"><b>3.4<br>
1646 minimum<br>
1647 execution<br>
1648 environment </b></p>
1649 </div></td>
1650 </tr>
1651 <tr>
1652
1653 <td>javax.servlet</td>
1654 <td><div align="center">F1.0</div></td>
1655 </tr>
1656 <tr>
1657 <td>javax.servlet.jsp</td>
1658 <td><div align="center">F1.0</div></td>
1659 </tr>
1660
1661 <tr>
1662 <td>org.apache.ant</td>
1663 <td><div align="center">1.2</div></td>
1664 </tr>
1665 <tr>
1666 <td>org.apache.commons.el</td>
1667 <td><div align="center">F1.0</div></td>
1668
1669 </tr>
1670 <tr>
1671 <td>org.apache.commons.logging</td>
1672 <td><div align="center">F1.0</div></td>
1673 </tr>
1674 <tr>
1675 <td>org.apache.jasper</td>
1676
1677 <td><div align="center">F1.0</div></td>
1678 </tr>
1679 <tr>
1680 <td>org.apache.lucene</td>
1681 <td><div align="center">n/a</div></td>
1682 </tr>
1683 <tr>
1684
1685 <td>org.eclipse.ant.core</td>
1686 <td><div align="center">1.4</div></td>
1687 </tr>
1688 <tr>
1689 <td>org.eclipse.ant.ui</td>
1690 <td><div align="center">1.4</div></td>
1691 </tr>
1692
1693 <tr>
1694 <td>org.eclipse.compare</td>
1695 <td><div align="center">n/a</div></td>
1696 </tr>
1697 <tr>
1698 <td>org.eclipse.core.boot</td>
1699 <td><div align="center">F1.0</div></td>
1700
1701 </tr>
1702 <tr>
1703 <td>org.eclipse.core.commands</td>
1704 <td><div align="center">F1.0</div></td>
1705 </tr>
1706 <tr>
1707 <td>org.eclipse.core.contenttype</td>
1708
1709 <td><div align="center">F1.0</div></td>
1710 </tr>
1711 <tr>
1712 <td>org.eclipse.core.expressions</td>
1713 <td><div align="center">F1.0</div></td>
1714 </tr>
1715 <tr>
1716
1717 <td>org.eclipse.core.filebuffers</td>
1718 <td><div align="center">1.4</div></td>
1719 </tr>
1720 <tr>
1721 <td>org.eclipse.core.filesystem</td>
1722 <td><div align="center">1.4</div></td>
1723 </tr>
1724
1725 <tr>
1726 <td>org.eclipse.core.jobs</td>
1727 <td><div align="center">F1.0</div></td>
1728 </tr>
1729 <tr>
1730 <td>org.eclipse.core.net</td>
1731 <td><div align="center">1.4</div></td>
1732
1733 </tr>
1734 <tr>
1735 <td>org.eclipse.core.resources</td>
1736 <td><div align="center">1.4</div></td>
1737 </tr>
1738 <tr>
1739 <td>org.eclipse.core.resources.compatibility</td>
1740
1741 <td><div align="center">1.4</div></td>
1742 </tr>
1743 <tr>
1744 <td>org.eclipse.core.runtime</td>
1745 <td><div align="center">F1.0</div></td>
1746 </tr>
1747 <tr>
1748
1749 <td>org.eclipse.core.runtime.compatibility</td>
1750 <td><div align="center">1.4</div></td>
1751 </tr>
1752 <tr>
1753 <td>org.eclipse.core.runtime.compatibility.auth</td>
1754 <td><div align="center">F1.0</div></td>
1755 </tr>
1756
1757 <tr>
1758 <td>org.eclipse.core.runtime.compatibility.registry</td>
1759 <td><div align="center">F1.0</div></td>
1760 </tr>
1761 <tr>
1762 <td>org.eclipse.core.variables</td>
1763 <td><div align="center">1.4</div></td>
1764
1765 </tr>
1766 <tr>
1767 <td>org.eclipse.debug.core</td>
1768 <td><div align="center">1.4</div></td>
1769 </tr>
1770 <tr>
1771 <td>org.eclipse.debug.ui</td>
1772
1773 <td><div align="center">1.4</div></td>
1774 </tr>
1775 <tr>
1776 <td>org.eclipse.equinox.app</td>
1777 <td><div align="center">F1.0</div></td>
1778 </tr>
1779 <tr>
1780
1781 <td>org.eclipse.equinox.common</td>
1782 <td><div align="center">F1.0</div></td>
1783 </tr>
1784 <tr>
1785 <td>org.eclipse.equinox.http.jetty</td>
1786 <td><div align="center">F1.0</div></td>
1787 </tr>
1788
1789 <tr>
1790 <td>org.eclipse.equinox.http.servlet</td>
1791 <td><div align="center">F1.0</div></td>
1792 </tr>
1793 <tr>
1794 <td>org.eclipse.equinox.http.registry</td>
1795 <td><div align="center">F1.0</div></td>
1796
1797 </tr>
1798 <tr>
1799 <td>org.eclipse.equinox.jsp.jasper</td>
1800 <td><div align="center">F1.0</div></td>
1801 </tr>
1802 <tr>
1803 <td>org.eclipse.equinox.jsp.jasper.registry</td>
1804
1805 <td><div align="center">F1.0</div></td>
1806 </tr>
1807 <tr>
1808 <td>org.eclipse.equinox.launcher</td>
1809 <td><div align="center">F1.0</div></td>
1810 </tr>
1811 <tr>
1812
1813 <td>org.eclipse.equinox.preferences</td>
1814 <td><div align="center">F1.0</div></td>
1815 </tr>
1816 <tr>
1817 <td>org.eclipse.equinox.registry</td>
1818 <td><div align="center">F1.0</div></td>
1819 </tr>
1820
1821 <tr>
1822 <td>org.eclipse.help</td>
1823 <td><div align="center">1.4</div></td>
1824 </tr>
1825 <tr>
1826 <td>org.eclipse.help.appserver</td>
1827 <td><div align="center">1.4</div></td>
1828
1829 </tr>
1830 <tr>
1831 <td>org.eclipse.help.base</td>
1832 <td><div align="center">1.4</div></td>
1833 </tr>
1834 <tr>
1835 <td>org.eclipse.help.ui</td>
1836
1837 <td><div align="center">1.4</div></td>
1838 </tr>
1839 <tr>
1840 <td>org.eclipse.help.webapp</td>
1841 <td><div align="center">1.4</div></td>
1842 </tr>
1843
1844 <tr>
1845 <td>org.eclipse.jdt</td>
1846 <td><div align="center">1.4</div></td>
1847 </tr>
1848 <tr>
1849 <td>org.eclipse.jdt.apt.core</td>
1850 <td><div align="center">1.5</div></td>
1851
1852 </tr>
1853 <tr>
1854 <td>org.eclipse.jdt.apt.ui</td>
1855 <td><div align="center">1.5</div></td>
1856 </tr>
1857 <tr>
1858 <td>org.eclipse.jdt.compiler.apt</td>
1859
1860 <td><div align="center">1.6</div></td>
1861 </tr>
1862 <tr>
1863 <td>org.eclipse.jdt.compiler.tool</td>
1864 <td><div align="center">1.6</div></td>
1865 </tr>
1866 <tr>
1867
1868 <td>org.eclipse.jdt.core</td>
1869 <td><div align="center">1.4</div></td>
1870 </tr>
1871 <tr>
1872 <td>org.eclipse.jdt.core.manipulation</td>
1873 <td><div align="center">1.4</div></td>
1874 </tr>
1875
1876 <tr>
1877 <td>org.eclipse.jdt.debug</td>
1878 <td><div align="center">1.4</div></td>
1879 </tr>
1880 <tr>
1881 <td>org.eclipse.jdt.debug.ui</td>
1882 <td><div align="center">1.4</div></td>
1883
1884 </tr>
1885 <tr>
1886 <td>org.eclipse.jdt.doc.isv</td>
1887 <td><div align="center">n/a</div></td>
1888 </tr>
1889 <tr>
1890 <td>org.eclipse.jdt.doc.user</td>
1891
1892 <td><div align="center">n/a</div></td>
1893 </tr>
1894 <tr>
1895 <td>org.eclipse.jdt.junit</td>
1896 <td><div align="center">1.4</div></td>
1897 </tr>
1898 <tr>
1899
1900 <td>org.eclipse.jdt.junit.runtime</td>
1901 <td><div align="center">1.4</div></td>
1902 </tr>
1903 <tr>
1904 <td>org.eclipse.jdt.junit4.runtime</td>
1905 <td><div align="center">1.5</div></td>
1906 </tr>
1907
1908 <tr>
1909 <td>org.eclipse.jdt.launching</td>
1910 <td><div align="center">1.4</div></td>
1911 </tr>
1912 <tr>
1913 <td>org.eclipse.jdt.source</td>
1914 <td><div align="center">n/a</div></td>
1915
1916 </tr>
1917 <tr>
1918 <td>org.eclipse.jdt.ui</td>
1919 <td><div align="center">1.4</div></td>
1920 </tr>
1921 <tr>
1922 <td>org.eclipse.jface</td>
1923
1924 <td><div align="center">F1.0</div></td>
1925 </tr>
1926 <tr>
1927 <td>org.eclipse.jface.text</td>
1928 <td><div align="center">1.4</div></td>
1929 </tr>
1930 <tr>
1931
1932 <td>org.eclipse.jsch.core</td>
1933 <td><div align="center">1.4</div></td>
1934 </tr>
1935 <tr>
1936 <td>org.eclipse.jsch.ui</td>
1937 <td><div align="center">1.4</div></td>
1938 </tr>
1939
1940 <tr>
1941 <td>org.eclipse.ltk.core.refactoring</td>
1942 <td><div align="center">1.4</div></td>
1943 </tr>
1944 <tr>
1945 <td>org.eclipse.ltk.ui.refactoring</td>
1946 <td><div align="center">1.4</div></td>
1947
1948 </tr>
1949 <tr>
1950 <td>org.eclipse.osgi (system.bundle)</td>
1951 <td><div align="center">M1.0</div></td>
1952 </tr>
1953 <tr>
1954 <td>org.eclipse.osgi.services</td>
1955
1956 <td><div align="center">M1.0</div></td>
1957 </tr>
1958 <tr>
1959 <td>org.eclipse.osgi.util</td>
1960 <td><div align="center">M1.0</div></td>
1961 </tr>
1962 <tr>
1963
1964 <td>org.eclipse.pde</td>
1965 <td><div align="center">1.4</div></td>
1966 </tr>
1967 <tr>
1968 <td>org.eclipse.pde.build</td>
1969 <td><div align="center">1.4</div></td>
1970 </tr>
1971
1972 <tr>
1973 <td>org.eclipse.pde.core</td>
1974 <td><div align="center">1.4</div></td>
1975 </tr>
1976 <tr>
1977 <td>org.eclipse.pde.doc.user</td>
1978 <td><div align="center">n/a</div></td>
1979
1980 </tr>
1981 <tr>
1982 <td>org.eclipse.pde.junit.runtime</td>
1983 <td><div align="center">1.4</div></td>
1984 </tr>
1985 <tr>
1986 <td>org.eclipse.pde.runtime</td>
1987
1988 <td><div align="center">1.4</div></td>
1989 </tr>
1990 <tr>
1991 <td>org.eclipse.pde.source</td>
1992 <td><div align="center">n/a</div></td>
1993 </tr>
1994 <tr>
1995
1996 <td>org.eclipse.pde.ui</td>
1997 <td><div align="center">1.4</div></td>
1998 </tr>
1999 <tr>
2000 <td>org.eclipse.pde.ui.templates</td>
2001 <td><div align="center">1.4</div></td>
2002 </tr>
2003
2004 <tr>
2005 <td>org.eclipse.platform</td>
2006 <td><div align="center">F1.0</div></td>
2007 </tr>
2008 <tr>
2009 <td>org.eclipse.platform.doc.isv</td>
2010 <td><div align="center">n/a</div></td>
2011
2012 </tr>
2013 <tr>
2014 <td>org.eclipse.platform.doc.user</td>
2015 <td><div align="center">n/a</div></td>
2016 </tr>
2017 <tr>
2018 <td>org.eclipse.platform.source</td>
2019
2020 <td><div align="center">n/a</div></td>
2021 </tr>
2022 <tr>
2023 <td>org.eclipse.platform.source.*</td>
2024 <td><div align="center">n/a</div></td>
2025 </tr>
2026 <tr>
2027
2028 <td>org.eclipse.rcp</td>
2029 <td><div align="center">F1.0</div></td>
2030 </tr>
2031 <tr>
2032 <td>org.eclipse.rcp.source</td>
2033 <td><div align="center">n/a</div></td>
2034 </tr>
2035
2036 <tr>
2037 <td>org.eclipse.rcp.source.*</td>
2038 <td><div align="center">n/a</div></td>
2039 </tr>
2040 <tr>
2041 <td>org.eclipse.sdk</td>
2042 <td><div align="center">n/a</div></td>
2043
2044 </tr>
2045 <tr>
2046 <td>org.eclipse.search</td>
2047 <td><div align="center">1.4</div></td>
2048 </tr>
2049 <tr>
2050 <td>org.eclipse.swt</td>
2051
2052 <td bgcolor="#ffffff"><div align="center">M1.0</div></td>
2053 </tr>
2054 <tr>
2055 <td>org.eclipse.swt.*</td>
2056 <td bgcolor="#ffffff"><div align="center">M1.0</div></td>
2057 </tr>
2058 <tr>
2059
2060 <td>org.eclipse.team.core</td>
2061 <td><div align="center">1.4</div></td>
2062 </tr>
2063 <tr>
2064 <td>org.eclipse.team.cvs.core</td>
2065 <td><div align="center">1.4</div></td>
2066 </tr>
2067
2068 <tr>
2069 <td>org.eclipse.team.cvs.ssh</td>
2070 <td><div align="center">1.4</div></td>
2071 </tr>
2072 <tr>
2073 <td>org.eclipse.team.cvs.ssh2</td>
2074 <td><div align="center">1.4</div></td>
2075
2076 </tr>
2077 <tr>
2078 <td>org.eclipse.team.cvs.ui</td>
2079 <td><div align="center">1.4</div></td>
2080 </tr>
2081 <tr>
2082 <td>org.eclipse.team.ui</td>
2083
2084 <td><div align="center">1.4</div></td>
2085 </tr>
2086 <tr>
2087 <td>org.eclipse.text</td>
2088 <td><div align="center">1.4</div></td>
2089 </tr>
2090 <tr>
2091
2092 <td>org.eclipse.tomcat</td>
2093 <td><div align="center">n/a</div></td>
2094 </tr>
2095 <tr>
2096 <td>org.eclipse.ui</td>
2097 <td><div align="center">F1.0</div></td>
2098 </tr>
2099
2100 <tr>
2101 <td>org.eclipse.ui.browser</td>
2102 <td><div align="center">1.4</div></td>
2103 </tr>
2104 <tr>
2105 <td>org.eclipse.ui.cheatsheets</td>
2106 <td><div align="center">1.4</div></td>
2107
2108 </tr>
2109 <tr>
2110 <td>org.eclipse.ui.console</td>
2111 <td><div align="center">1.4</div></td>
2112 </tr>
2113 <tr>
2114 <td>org.eclipse.ui.editors</td>
2115
2116 <td><div align="center">1.4</div></td>
2117 </tr>
2118 <tr>
2119 <td>org.eclipse.ui.externaltools</td>
2120 <td><div align="center">1.4</div></td>
2121 </tr>
2122 <tr>
2123
2124 <td>org.eclipse.ui.forms</td>
2125 <td><div align="center">1.4</div></td>
2126 </tr>
2127 <tr>
2128 <td>org.eclipse.ui.ide</td>
2129 <td><div align="center">1.4</div></td>
2130
2131 </tr>
2132 <tr>
2133 <td>org.eclipse.ui.intro</td>
2134 <td><div align="center">1.4</div></td>
2135 </tr>
2136 <tr>
2137 <td>org.eclipse.ui.intro.universal</td>
2138
2139 <td><div align="center">1.4</div></td>
2140 </tr>
2141 <tr>
2142 <td>org.eclipse.ui.navigator</td>
2143 <td><div align="center">1.4</div></td>
2144 </tr>
2145 <tr>
2146
2147 <td>org.eclipse.ui.navigator.resources</td>
2148 <td><div align="center">1.4</div></td>
2149 </tr>
2150 <tr>
2151 <td>org.eclipse.ui.net</td>
2152 <td><div align="center">1.4</div></td>
2153 </tr>
2154
2155 <tr>
2156 <td>org.eclipse.ui.presentations.r21</td>
2157 <td><div align="center">1.4</div></td>
2158 </tr>
2159 <tr>
2160 <td>org.eclipse.ui.views</td>
2161 <td><div align="center">1.4</div></td>
2162
2163 </tr>
2164 <tr>
2165 <td>org.eclipse.ui.win32</td>
2166 <td><div align="center">1.4</div></td>
2167 </tr>
2168 <tr>
2169 <td>org.eclipse.ui.workbench</td>
2170
2171 <td><div align="center">F1.0</div></td>
2172 </tr>
2173 <tr>
2174 <td>org.eclipse.ui.workbench.compatibility</td>
2175 <td><div align="center">1.4</div></td>
2176 </tr>
2177 <tr>
2178
2179 <td>org.eclipse.ui.workbench.texteditor</td>
2180 <td><div align="center">1.4</div></td>
2181 </tr>
2182 <tr>
2183 <td>org.eclipse.update.configurator</td>
2184 <td bgcolor="#ffffff"><div align="center">F1.0</div></td>
2185 </tr>
2186
2187 <tr>
2188 <td>org.eclipse.update.core</td>
2189 <td bgcolor="#ffffff"><div align="center">F1.0</div></td>
2190 </tr>
2191 <tr>
2192 <td>org.eclipse.update.core.linux</td>
2193 <td bgcolor="#ffffff"><div align="center">F1.0</div></td>
2194
2195 </tr>
2196 <tr>
2197 <td>org.eclipse.update.core.win32</td>
2198 <td bgcolor="#ffffff"><div align="center">F1.0</div></td>
2199 </tr>
2200 <tr>
2201 <td>org.eclipse.update.scheduler</td>
2202
2203 <td bgcolor="#ffffff"><div align="center">F1.0</div></td>
2204 </tr>
2205 <tr>
2206 <td>org.eclipse.update.ui</td>
2207 <td><div align="center">F1.0</div></td>
2208 </tr>
2209 <tr>
2210
2211 <td>org.junit (old)</td>
2212 <td><div align="center">1.4</div></td>
2213 </tr>
2214 <tr>
2215 <td>org.junit (JUnit4)</td>
2216 <td><div align="center">1.5</div></td>
2217 </tr>
2218
2219 <tr>
2220 <td>org.mortbay.jetty</td>
2221 <td><div align="center">F1.0</div></td>
2222 </tr>
2223 </tbody>
2224 </table>
2225
2226 </body>
2227 </html>