You are on page 1of 40

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or g/TR/xhtml1/DTD/xhtml1-transitional.

dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/> <title>Eclipse Project Release Notes 3.8</title> </head> <body> <h1>Eclipse Project Release Notes</h1> <p>Release 3.8.0<br/> Last revised June 5, 2012</p> <p align="left"><strong>This software is OSI Certified Open Source Software.<br/ > OSI Certified is a certification mark of the Open Source Initiative.&nbsp;</stro ng></p> <blockquote> <p align="left"><a href="#TargetOperatingEnvironments">1. Target Operating Environments</a><br/> <a href="#Compatibility">2. Compatibility with Previous Releases</a><br/> <a href="#KnownIssues">3. Known Issues</a><br/> <a href="#RunningEclipse">4. Running Eclipse</a><br/> <a href="#Upgrading">5. Upgrading a Workspace from a Previous Release</a><br/> <a href="#InteroperabilityWithPreviousReleases">6. Interoperability with Previous Releases</a><br/> </p> </blockquote> <h2>1. <a name="TargetOperatingEnvironments"></a>Target Operating Environments</ h2> <p>In order to remain current, each Eclipse Project release targets reasonably c urrent operating environments.</p> <p>Most of the Eclipse SDK is &quot;pure&quot; Java code and has no direct depen dence on the underlying operating system. The chief dependence is therefore on the Java Platform itself. Portions are targeted to specific classes of operating environments, requiring their source code to only reference facilities availab le in particular class libraries (e.g. J2ME Foundation 1.1, J2SE 1.4, Java 5, etc ).</p> <p>In general, the 3.8 release of the Eclipse Project is developed on a mix of Java SE 6 and Java SE 7 VMs. As such, the Eclipse SDK as a whole is targeted at all modern, desktop Java VMs. Most functionality is available f or Java SE 6 level development everywhere, and extended development capabilities are made available on the VMs that support them.</p> <p><a href="#appendix">Appendix 1</a> contains a table that indicates the class library level required for each bundle.</p> <p>There are many different implementations of the Java Platform running atop a variety of operating systems. We focus our testing on a handful of popular combinations of operating system and Java Platform; these are our <em> reference platforms</em>. Eclipse undoubtedly runs fine in many operating environments beyond the reference platforms we test. However, since we do not systematicall y test them we cannot vouch for them. Problems encountered when running Eclipse on a non-reference platform that cannot be recreated on any reference platform will

be given lower priority than problems with running Eclipse on a reference plat form.</p> <p>Eclipse 3.8 is tested and validated on the following reference platforms (this list is updated over the course of the release cycle):</p> <style type="text/css"> table.platforms { border-width: 1px; border-spacing: 0px; border-style: solid; border-collapse: separate; } table.platforms th { border-width: 1px; padding: 3px; border-style: inset; border-color: black; background-color: #B9A9FF; } table.platforms td { border-width: 1px 1px 1px 1px; padding: 3px 3px 3px 3px; border-style: inset inset inset inset; border-color: gray gray gray gray; } table.platforms tr.c0 td { background-color: #FDFDFD; } table.platforms tr.c1 td { background-color: #F4EEFF; } </style> <center> <table class="platforms"> <tr> <th>Operating System</th> <th>Version</th> <th>Hardware</th> <th>JRE</th> <th>Windowing System</th> </tr> <!-- ************ WINDOWS ************** --> <tr class="c0"> <td rowspan="4">Windows</td> <td rowspan="2">7</td> <td rowspan="1">x86 32-bit</td> <td rowspan="4"><img src="http://www.eclipse.org/eclipse /development/new.gif" alt="(new)" border="0" height="12" width="12" /> Oracle Ja va 7 Update 2<br/> Oracle Java 6 Update 27<br/> IBM Java 6 SR9 </td> <td rowspan="4">Win32</td> </tr> <tr> <td rowspan="1">x86 64-bit</td> </tr> <tr class="c0"> <td rowspan="2">XP</td> <td rowspan="1">x86 32-bit</td> </tr>

<tr class="c0"> <td rowspan="1">x86 64-bit</td> </tr> <!-- ************ RHEL ************** --> <tr class="c1"> <td rowspan="3">Red Hat Enterprise Linux</td> <td rowspan="3">6</td> <td rowspan="1">x86 32-bit</td> <td rowspan="2"> <img src="http://www.eclipse.org/eclipse/development /new.gif" alt="(new)" border="0" height="12" width="12" /> Oracle Java 7 Update 2<br/> Oracle Java 6 Update 27<br/> IBM Java 6 SR9 </td> <td rowspan="3">GTK</td> </tr> <tr class="c1"> <td rowspan="1">x86 64-bit</td> </tr> <tr class="c1"> <td rowspan="1">Power 64-bit</td> <td>IBM Java 6 SR9</td> </tr> <!-- ************ SLES ************** --> <tr class="c0"> <td rowspan="3">SUSE Linux Enterprise Server</td> <td rowspan="3">11</td> <td rowspan="1">x86 32-bit</td> <td rowspan="2">Oracle Java 6 Update 27<br/> IBM Java 6 SR9 </td> <td rowspan="3">GTK</td> </tr> <tr class="c0"> <td rowspan="1">x86 64-bit</td> </tr> <tr class="c0"> <td rowspan="1">Power 64-bit</td> <td>IBM Java 6 SR9</td> </tr> <!-- ************ Ubuntu ************** --> <tr class="c1"> <td rowspan="2">Ubuntu Long Term Support</td> <td rowspan="2">10.04</td> <td rowspan="1">x86 32-bit</td> <td rowspan="2">Oracle Java 6 Update 27<br/> IBM Java 6 SR9 </td> <td rowspan="2">GTK</td> </tr> <tr class="c1"> <td rowspan="1">x86 64-bit</td> </tr> <!-- ************ Solaris ************** --> <tr class="c0"> <td rowspan="2">Oracle Solaris</td> <td rowspan="2">11</td> <td rowspan="1">x86 32-bit</td> <td rowspan="2">Oracle Java 6 Update 27</td>

<td rowspan="2">GTK</td> </tr> <tr class="c0"> <td rowspan="1">SPARC 32-bit</td> </tr> <!-- ************ HPUX ************** --> <tr class="c1"> <td rowspan="1">HP-UX</td> <td rowspan="1">11i v3</td> <td rowspan="1">ia64 32-bit</td> <td rowspan="1">HP-UX Java 6 Update 10</td> <td rowspan="1">GTK</td> </tr> <!-- ************ AIX ************** --> <tr class="c0"> <td rowspan="1">IBM AIX</td> <td rowspan="1">7.1</td> <td rowspan="1">Power 64-bit</td> <td rowspan="1">IBM Java 6 SR9</td> <td rowspan="1">GTK</td> </tr> <!-- ************ Mac ************** --> <tr class="c1"> <td rowspan="2">Apple Mac OS X</td> <td rowspan="2">10.6</td> <td rowspan="1">Universal 32-bit</td> <td rowspan="2">Apple Java 10.6 Update 5</td> <td rowspan="2">Cocoa</td> </tr> <tr class="c1"> <td rowspan="1">Universal 64-bit</td> </tr> </table> </center> <p>As stated above, <i>we expect that Eclipse works fine on other current Java VM and OS versions but we cannot flag these as reference platforms withou t significant community support for testing them.</i></p> <p>The Eclipse SDK is designed as the basis for internationalized products. The user interface elements provided by the Eclipse SDK components, including dial ogs and error messages, are externalized. The English strings are provided as the default resource bundles.</p> <p>Latin-1, DBCS, and BiDi locales are supported by the Eclipse SDK on all refer ence platforms.</p> <p>The Eclipse SDK supports GB 18030 (level 1), the Chinese code page standard, on Windows, Linux and the Macintosh.</p> <p>German and Japanese locales are tested.</p> <h2>2. <a name="Compatibility"></a>Compatibility with Previous Releases</h2> <h3>Compatibility of Release 3.8 with 3.7</h3> <p>Eclipse 3.8 is compatible with Eclipse 3.7 (and all earlier 3.x versions).</p > <p><strong>API Contract Compatibility:</strong> Eclipse SDK 3.8 is upwards contract-compatible with Eclipse SDK 3.7 except in those areas noted in the <em>Eclipse 3.8 Plug-in Migration Guide</em>. Programs that use affected API s and extension points will need to be ported

This means that workspaces and projects created with Eclipse SDK 3. Downwar d workspace compatibility is not supported.7.</p> <p><strong>Source Compatibility:</strong> Eclipse SDK 3.7 except in those areas noted in the <em>Eclipse 3. Refer to <a href="http://wiki. Visible metadata files created (or overwritten) by Eclipse 3..7 . and certainly everything in a package with &quot. This includes both hidden metadata.eclipse. 3. If source files use new Eclipse SDK APIs. in its name or x-internal in the bundle manifest entry.7 APIs.8 is upwards binary-compatible with Eclipse SDK 3.7 APIs might successfully compile and run against Eclipse SDK 3.internal&quot.</p> <p><strong>Binary (plug-in) Compatibility:</strong> Eclipse SDK 3.x versions of the Eclipse SDK unless noted .8 and upgraded to a 3. Refer to <a href="http://wiki. which may propagate between workspaces via file copying or team repositories.to Eclipse SDK 3.8 Plug-in Migration Guide</em>.8 plug-in developers are responsible for ensuring that their plug-ins recogn ize metadata from earlier versions and process it appropriately. Downward contract compatibility is not supported.8 will not be usable in Eclipse SDK 3.php/Evolving_Java-based_APIs"> <em>Evolving Java-based APIs</em> </a> for a discussion of the kinds of API changes that maintain binary compati bility. although this is not guaranteed. Plug-ins for Eclipse SDK 3. A workspace created (or opened) by a product based on Eclipse 3. User interface session state may be discarded when a workspace is upgraded.g.8 is upwards workspace-compatible with earlier 3.8 workspace.7 except in the areas noted in the <em>Eclipse 3.8 will generally be unusable with earlier versions of Eclipse. they will not be usable with an earlier version of the Eclipse SDK..org/index.php/Evolving_Java-based_APIs"> <em>Evolving Java-based APIs</em> </a> for a discussion of the kinds of API changes that maintain contract compa tibility.8 Plug-in Migration Guide</em>.0 ca n be successfully opened by Eclipse SDK 3.org/index.8 is upwards source-comp atible with Eclipse SDK 3. Downward plug-in compatibility is not supported.8 will be unusable with a product based on an ear lier version of Eclipse. which is localized to a particular workspace.eclipse.8 APIs. </p> <p><strong>Workspace Compatibility:</strong> Eclipse SDK 3. as well as meta data files found within a workspace project (e.8 APIs. There is no guarantee that compliance with Eclipse SDK 3. Individual plug-ins developed for Eclipse SDK 3. 3. This means that source files w ritten to use Eclipse SDK 3.project file).8 should provide similar upwards compatib ility for their hidden and visible workspace metadata created by earlier versions.8 APIs would ensure compliance with Eclipse SDK 3. Downward source compatibility is not supported. Client plug-ins that directly depend on anything other than what is specified in the Eclipse SDK API are inherently . are considered implementation details which may vary between operating environ ment and are subject to change without notice. the . </p> <p><strong>Non-compliant usage of API's</strong>: All non-API methods and classe s.

1 <a name="I-General">General problems</a></h3> <h3>3.2.2.&nbsp.&nbsp.eclipse.8 Install/U pdate</a><br/> &nbsp. use the Eclipse <tt>vm</tt> command-line argument.2 Platform</a><br/> &nbsp.&nbsp.&nbsp.&nbsp.6 SWT</a><br/> &nbsp.9 Debug</a><br/> &nbsp.1.1 <a name="I-General-Startup">General .&nbsp.&nbsp.&nbsp.&nbsp.&nbsp. <a href="#I-Platform-Compare">3.&nbsp. &nbsp. <a href="#I-Platform-Ant">3.2.&nbsp. <a href="#I-Platform-Team-CVS">3.&nbsp.&nbsp.2. <a name="KnownIssues"></a> Known Issues</h2> <blockquote> <a href="#I-General"> 3.1 General problems</a><br/> &nbsp.&nbsp.6 on i686<br/>* IMPORTANT: so me Java tools are not available on some VMs on some architectures</tt> </div> .&nbsp.2.&nbsp.&nbsp.&nbsp. (See also the <a href="#RunningEclipse">Running Eclip se</a> section below. <a href="#I-General-64bitJava">3.&nbsp.&nbsp.&nbsp. <a href="#I-General-GCJ">3. &nbsp.&nbsp.&nbsp."> <tt>* run-java-tool is not available for sun-jdk-1.&nbsp.2.7 Team and CVS</a> <br/> &nbsp.&nbsp.2.eclipse.10 Compare</a><br/> <a href="#I-JDT"> 3.1.1.2. <a href="#I-Platform-Core">3.1 Startup</a><br/> &nbsp. stance</a><br/> &nbsp.&nbsp.Startup</a></h3> <h4>Installation/Configuration issues that can cause Eclipse to fail start</h4> <p>Here are some common problems that can cause Eclipse not to start:</p> <ul> <li>As shown <a href="#TargetOperatingEnvironments">above</a>.8 req uires at least a Java SE 5.2.org/bugs/">http://bugs.3 User Assi <a href="#I-Platform-UI">3.)</li> <li> Running Eclipse on Gentoo Linux may result in the following error message: <div style="margin-left: 40px.&nbsp. Eclipse 3.3 64-bit Java HotS pot(TM) VM</a><br/> <a href="#I-Platform">3.eclipse.3 Java development tools (JDT)</a><br/> <a href="#I-PDE"> 3.5 Text</a><br/> <a href="#I-Platform-SWT">3.&nbsp. </p> <h2>3. <a href="#I-Platform-Install-Update">3.&nbsp.&nbsp.1 Core</a><br/> &nbsp. To explicitly specify which VM to run with.1.2 GCJ</a><br/> &nbsp.&nbsp. <a href="#I-General-Startup">3.&nbsp. Perhaps an older version of the VM is being found in your path.&nbsp.2. Refer to <a href="http://www. &nbsp.2 Ant</a><br/> <a href="#I-Platform-User-Assistance">3. <a href="#I-Platform-Debug">3.&nbsp.4 Plug-in Development Environment (PDE)</a><br/> </blockquote> <p>Note: Bug numbers refer to the Eclipse project bug database at <a href="http: //dev.&nbsp.&nbsp.unsupportable and receive no guarantees about compatibility within a single release much less with earlier releases.org/articles/Article-API%20use/eclipse-api-usage-r ules.org/bugs/</a></p> <h3>3.&nbsp.4 UI</a><br/> <a href="#I-Platform-Text">3.&nbsp.html"> <em>How to Use the Eclipse API</em> </a> for information about how to write compliant plug-ins.

eclipse.ClassNotFoundException: org. we suggest users experiencing this problem set their configuration area explicitly using the <tt>-configuration</tt > command line argument.eclipse.runtime .cgi?id =3109">3109</a> and <a href="https://bugs.eclipse.cgi?id=67719 ">67719</a>)</li> </ul> <h4><b>Invalid characters in install directory prevents Eclipse from starting</b ></h4> <p>Eclipse will fail to launch if installed in a directory whose path contains certain invalid characters. including :%#&lt.cgi?id=176021">1760 21</a>)</li> <li>Eclipse must be installed to a clean directory and not installed over top of a previous installation.eclipse.org/bugs/show_bug.canWrite() appears to return true in unexpected cases (e. See the section <a href="#RunningEclipse">Running Eclipse</a> for det ails on addressing this VM problem. </p> <h3>3.io. If your workspace is in a child directory of your old installation directory. start Eclipse by specifying a -vm argument.</li> <li>Java sometimes has difficulty detecting whether a file system is writable.File. The workaround is to install Eclipse in a directory whose path does not contain invalid characters. may fail to write a log file with any details. If you have done this then please re-install to a new directory.GCJ</a></h3> <p>GCJ is an effort by the GCC team to provide an open source Java compiler and runtime environment to interpret Java bytecode.&gt.If this occurs. I n particular.log)</li> </ul> <p>The workspace's log file is a good place to check to identify whether GCJ is .metadata/.&quot.org/bugs/show_bug. To work around this.. This will cause CPU usage to stay at 100% until the process is ended. </p> <p>The most common problems surrounding GCJ are:</p> <ul> <li>Eclipse does not start at all</li> <li>Eclipse throws a 'java.org/bugs/show_bug. Unfortunately.eclipse.1. The net result is that Eclipse will fail to start and depending on the circumstances.g.cgi?id=17281">17281</a>)</p> <h4>Hanging during class loading when out of permanent generation memory</h4> <p> The Sun VM may hang indefinitely during class loading if it runs out of permanen t generation memory.lang. (bugs <a href="https://bugs. the GCJ runtime environment is not an environment that is often tested on by Eclipse developers. the method java.!. either specify the path to a java vm or use: <tt>eclipse -vm `java-config</tt> --java` (bug <a href="https://bugs. (bug <a href="https://bugs.Plugin' that can be found in the logs (located in workspace/.core. using Windows drive sharing where the share is a read-only Samba drive).org/bugs/show_bug. then see the instructions below on "<a href="#upgrading">Upgrading Wo rkspace from a Previous Release"</a>.2 <a name="I-General-GCJ">General . may erroneously detect the current configuration location as writable. The Eclipse runtime generally needs a writable configuration area and as a result of this problem.

gz (64-bit)</pre> <p>To run Eclipse with an alternate Java runtime environment.found</code> <p>Once the path to the virtual machine's binary has been identified.</p> Eg: <code>Build id: M20070212-1330 (Ubuntu version: 3.8.gz (32-bit) eclipse-SDK-3.tar. the build identif ier can be of particular interest as it is tagged by some distributions.eclipse.. try runnin g Eclipse with the following command:</p> <code>. the path to the Ja va virtual machine's binary must be identified. An example of the terminal's output is shown below:</p> <code>searching for compatible vm. Every Eclipse log session is prepended with information about the runtime environment that was used to run Eclipse.eclipse. <pre>eclipse-SDK-3.2. The log may include something like the following:</p> <code>java. Installation Details &gt.2-0ubuntu3)</code> <p>The two most common workarounds are:</p><ul> <li>download the Eclipse binary from eclipse.being used or not.ecl ipse. About Eclipse SDK &gt.02/bin/java</code> ./eclipse -vm /opt/sun-jdk-1./eclipse -vm /usr/lib/jvm/sun-java-6/bin/java<br/> .fullversion=GNU libgcj 4..org/eclipse/downloads/">http://download.eclipse.8-linux-gtk.org directly</li> <li>run Eclipse using an alternate Java runtime environment</li></ul> <p>To download Eclipse.org/downloads/">http://www.org/eclipse/downloads/</a></li></ul> It is imperative that 64-bit builds are downloaded and used if a 64-bit Java runtime environment has been installed. Configuration</b>..tar.6..not found<br/> testing /usr/lib/jvm/java-gcj. With an Eclipse installation from the distribution.2. The <b>About</b> dialog itself can also provide other information.0 of the Eclipse SDK packaged for 32-bit and 64-bit processors. altering the $PATH variable to include the path to the alternate Java runtime environment is often not enough as the Eclipse that Linux distributions package often performs a scan internally to pick up GCJ by itself whilst ignoring what's on the $PATH.2. it might look something like the following:</p> <code>. Below are two sample tarball names of version 3. try one of the links below:</p><ul> <li><a href="http://www./eclipse -vm /path/to/jre/bin/java</code> <p>For an actual example. one can check which runtime environment is being used to run Eclipse by going to <b>Help &gt.1 (Debian 4..org/downloads /</a></li> <li><a href="http://download..<br/> testing /usr/lib/jvm/java-7-icedtea.1-5)</code> <p>If Eclipse does start.0.8-linux-gtk-x86_64.org web site. This allows the user to identify whether Eclipse was downloaded through the distribution's package management system or directly from the eclipse.

cgi?id=214092">2 14092</a>).ini file located within Eclipse's folder can be altered to automatically pass this argument to Eclipse at startup.ini file can be found at <a href="http://wiki.org/eclipse/core/internal/dtree/DataTreeNode.</p> <p>If problems persists after downloading an installation of Eclipse from eclipse. To work around the issue you can exclude the method org.0. so the simplest resolut ion is to obtain the latest JRE release for your platform.ini">h ttp://wiki.internal.eclipse.XXMaxPermSize<br/> 256m<br/> -vm<br/> /opt/sun-jdk-1.forwardD eltaWith </code> <p> This VM argument can be placed in the eclipse.platform<br/> --launcher.do?bug_id=6 614100">http://bugs.6.org/Eclipse.forwardDeltaWith from being compiled with the following VM argument: </p> <code> -XX:CompileCommand=exclude.ini file after the -vmargs line li ke the following: </p> .<p>If this seems to solve the problem. The crash usually occurs within a VM CompilerThread when attempting to compile t he method org.org/news groups/">newsgroups</a>.org and using a supported Java runtime environment (a list of which may be found <a href="#TargetOperatingEnvironments">above</a>).DataTreeNode. and Eclipse bug <a href="https://bugs.eclipse. More information about the eclipse. and/or <a href="https://bugs.3 <a name="I-General-64bitJava">General .DataTreeNode. the IRC <a href="irc://irc. The eclipse.eclipse.dtree.do?bug_id=6614100</a>.ini</a>.sun.64-bit Java HotSpot(TM) VM</a> </h3> <p> There is a known issue with the Java HotSpot(TM) 1.net/#eclipse">channel</a>.eclipse.dt ree.sun.eclipse.com/bugdatabase/view_bug.eclipse. you can seek further assistance through the <a href="http://www.com/bugdatabase/view_bug. An example of its content is presented below:</p> <code>-showsplash<br/> org.org/bugs/show_bug.internal.forwardDeltaWith.1. </p> <h3>3.0 VM compiler which causes eclipse to crash (see Sun bug <a href="http://bugs.02/bin/java<br/> -vmargs<br/> -Xms40m<br/> -Xmx512m</code> <p>Note that every argument must be on its own line. it is likely that the problem really was related to the use of GCJ as the Java runtime for running Eclipse.eclipse.6.core.core. </p> <p> This problem has been addressed in Sun Java 6 update 11.org/bugs/">bugzilla</a>.freenode.eclipse.org/Eclipse.

setContextClassLoader(yourClassLoader).x86_1.platform.product=org.product line to read eclipse.2 <a name="I-Platform">Platform</a></h3> <h3>3.eclipse.v20090306-1900<br/> --launcher.launcher_1. Note that unzipping a different version of a plug-in that is already installed will have no effect.<code> -startup<br/> plugins/org. This is because the id of the standard Eclipse product changed.jar<br/> -showsplash<br/> org.equinox.ini file and use it with a new Eclipse build. you may not get the correct product branding.org/eclipse/core/internal/dtree/DataTreeNode.win32.0.library<br/> plugins/org.launcher. However this is not recommended.200. To change th e version of a plug-in installed in your system. do the following:</p> <ol> <li>Create a thread in which to run your code.forwardD eltaWith<br/> -Xms40m<br/> -Xmx256m<br/> </code> <p> There have been reports of other classes that cause the compiler to crash. As a workaround.ide . The work around is either to delete the local config.eclipse.platform<br/> --launcher. If a ll else fails you can disable the compiler with the VM arg &quot. </p> <h3>3.eclipse. you are competing with other users of the thread (all of Eclipse).-Xint&quot.eclipse. and the dropins directory should be used for this purpose instead. or install a feature patch.ini or update the eclipse. you need to either perform an update.0.getCla ssLoader())</li> <li>Run your code in the newly created thread.1 <a name="I-Platform-Core">Platform .equinox. Users in shared install scenarios may end up in this situation as previous builds of Eclipse automatically generated config. so the results will .200.</li> </ol> <p>If you set the context class loader for the current thread.Core</a></h3> <h4>Installing plug-ins by unzipping them into the plugins directory</h4> <p>New plug-ins can be installed into the system by unzipping them into the plug ins directory.</p> <h4>Problems with classloaders in created threads</h4> <p>There is a known issue with trying to load classes from a newly-created thread using a class loader different from the plug-in class loader.</li> <li>Send yourThread.class.ini</h4> <p>If you have an old config.XXMaxPermSize<br/> 256m<br/> -vmargs<br/> -XX:CompileCommand=exclude. // you can find your classloader by grabbing a class it loaded (YourPluginClass.</p> <h4>No branding with old config.win32..ini files in some cases.2.v20090429-1630. The result will be a <code>ClassNotFoundException</code>.

If the desired class is in the classpath used for the application classloader (e. such as in a C callback (bug <a href="https://bugs. a deadlock situation can be created. defined by the VM argument -cp &lt. there is no problem. (bug <a href="https://bugs.app/Contents/MacOS directory (like the eclipse. </p> <p> The proper plug-in class loader is used by FindClass in JNI functions which are passed the JNIEnv pointer. However.AttachCurrentThread((void**)&amp.cgi?id=125250">125 250</a>).classpath&gt.). the following will fail because AttachCurrentThread is used to get the JNIEnv pointer:</p> <pre> static JavaVM* jvm.startup</h4> <p>If <code>Plugin.org/bugs/sh ow_bug. uses the application class loader to find the class.org/bugs/show_bug. To work around this you should ship your plug-in with a bundle manifest. (bug <a href="https://bugs. The reason is that FindClass.cgi?id=8907">8907</a>)</p> <h4>Deadlock creating executable extension in Plugin. jvm-&gt. but not when you have to use AttachCurrentThread to g et the JNIEnv pointer.org/bugs/show_bug.be unpredictable.cgi?id=5875">5875</a> )</p> <h4>Potential Problems Converting Plug-in Manifests</h4> <p>If your plug-in ships with a plug-in manifest and not an OSGi bundle manifest . (bug <a href="https://bugs. as it would typically b e in a stand-alone application. the default location for the . and contains a nested JAR file then there may be problems in the automatic generation of the bundle manifest file. Eclipse uses its own class loader to find classes contained in plug-ins.startup</code> code is too complex and performs tasks such as creating an executable extension. // Global variable void myCallback(void) { JNIEnv* env.cgi?id=976 89">97689</a>)</p> <h4>Location for Debug Options File on Mac OS</h4> <p>If you are running in debug mode on Mac OS.org/bugs/sho w_bug.eclipse.complete. . In this case the application classloader is used. The packages defined in the nested JAR may not be exported correctly in the <tt>Export-packag es</tt> bundle manifest header.org/bugs/show_bug. under Eclipse. </p> <p> For example.options file is inside the application bundle in the Eclipse. However.eclipse. NULL).cgi?id=88782">88782</a>)</p> <h4>Issues with JNI that use FindClass</h4> <p> There may be issues when using a JNI implementation that uses FindClass in a function where the JNIEnv pointer is not available.eclipse.).eclipse.eclipse. Only simple bookkeeping tasks should be performed in <code>Plugin.some/class&quot.ini). is shipped as a JAR file. there should be no problem in practice provided you reset the context class loader back to its original value when your use in the current thread is&nbsp.env.g.FindClass(&quot. (bug <a href="https://bugs. // Fails if some/class is not in the application classloader: jclass cls = env-&gt.startup</code> code. in this case. the application classloader does not have access to classes contained in plug-ins.

&quot.2 <a name="I-Platform-Ant">Platform .methodName&quot.eclipse.). .Ant</a></h3> <h4> Custom Ant tasks and Ant types must be separate from plug-in library JARs</ h4> <p>Including the class files for custom Ant tasks or Ant types in the regular code JAR for your plug-in causes problems.CallVoidMethod(callback.). &quot. mid = env-&gt. jvm-&gt. for example: </p> <pre> static jmethodID mid. } void myCallback(void) { JNIEnv* env. mid.)V or whatever signature&quot..2......GetMethodID(cls.)V or whatever signature&quot. jvm-&gt.</p> <h4>XDoclet support from within Eclipse</h4> <p>Since there are differences when running Ant from the commandline and within .eclipse. Several aspects of Ant and its use of global Java resources (such as System.).org/bugs/show_bug..core. if(!cls) goto ERR. // Find the class and store the method ID // Will use the class loader that loaded the JNI library jclass cls = env-&gt. &quot.cgi?id=34466">34466</a>). This ensures that the Ant tasks and types are loaded by the special Ant class loader and not by a plug-in classloader.DetachCurrentThread().AttachCurrentThread((void**)&amp.cgi?id=24129">24129</a>).).. methodID.GetMethodID(cls.antTasks</c ode> or <code>antTypes</code> extension point (and not declared as a library in the plug-in's manifest).eclipse.(Ljava/lang/String. } } </pre> <p> A solution is to cache the method ID.org/bugs/show_bug.(Ljava/lang/String. These class files must be provided in a separate JAR that is contributed to the <code>org.err). if(!mid) goto ERR.FindClass(className&quot. env-&gt. . (bug <a href="https:/ /bugs. void *reserved) { .DetachCurrentThread().ant. // Handle error . // Store the JavaVM pointer jvm = vm. &quot.. jvm-&gt.. } } </pre> <h3>3.methodName&quot. make it unsafe to run more than one Ant build concurrently in the same JVM.. // Global variable JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm. env-&gt.some/class&quot.). (bug <a href="https://bugs.jmethodID methodID = env-&gt.out and System. . NULL)..env.</p> <h4> Concurrent Ant builds not supported</h4> <p>Eclipse can run Ant in the same JVM as the rest of Eclipse.CallVoidMethod(callback.

3 (bug <a href="https://bugs.apache.8.cgi?id=37070">37070</a>)</p> <h4>Ant Editor code completion based on Ant 1.cgi?id=187993">187993</a > for possible workarounds</p> <h4>Ant 1. S ee <a href="https://bugs.x. See bug <a href="https://bugs.org/bugs/show_bug.PROJECT_NAME&gt.8. (bug <a href="https://bugs. Embedded usage of Ant builds.8.import&gt. you will get the following error: Errors during build. Problems may occur creating XDoclet subtasks.cgi?id=344518">bug 344518</a> .x</h4> <p>Code completion provided by the Ant editor does not respect the user-specifie d version of org.ant.org/bugs/show_bug. The workaround is to first disable the builder for auto-builds and then rename t he builder. </p> <p> For more information on tasks that require additional bundles please refer to th e <a href="http://www.x reports missing libraries as build failures</h4> <p> In Ant 1.</p> <h4>Renaming an External Tool builder set to run during auto-build will cause er rors</h4> <p>If you rename an existing external tool builder that is configured to run dur ing auto-builds.cgi?id=193046">bug 193046</a>)</ p> <h4> Setting build loggers not supported when debugging Ant builds</h4> <p>When debugging Ant builds within Eclipse. In previous versions of Ant.core plug-in or ANT_HOME.s.eclipse.eclipse. Ant builds will fail with an IllegalArgumentExcept ion if the Eclipse installation is in a location with spaces in the path.html">A nt 1.org/bugs/show_bug. if you try to use a task that requires additional libraries and yo u do not have the libraries on the Ant classpath.org/manual/install. the build would still report that it had suceeded e ven though it actually failed to run any of the tasks from additional bundles.2.8.eclipse.eclipse. The builder launch configuration could not be found.8.2 release notes</a> and the <a href="http://ant. such as plug-in export will also fail..cgi?id=118294">118294</a>)< /p> <h4>Slow typing/saving of the Ant editor with imports that define numerous macro defs</h4> <p>The Ant editor is slow on saving with buildfiles that have &lt. dec larations of buildfiles that have numerous &lt.cgi?id=125117">125117</a > for a possible workaround</p> <h4>Failure to run Ant builds on non-Windows platforms if Eclipse installed in l ocation with spaces in the path</h4> <p>Due to a bug in Ant 1.6.org/dist/ant/RELEASE-NOTES-apache-ant-1.x with some updates to Ant 1. some extra steps may be needed to have XDoclet support function correct ly within Eclipse.org/bugs/show_bug.org/bugs/show_bug. the build will now properly re port as failed. The workarounds and full discussion can be found in bug report. (bug <a href="https://bugs.0.macrodef&gt. Code completion proposals are mostly based on Ant 1. Errors running builder "Integrated External Tool Builder" on project &lt.html#optionalTasks">Option .org/bugs/show_bug.7. setting <code>-logger</code> as a p rogram argument will be ignored.Eclipse.apache.6. See bug <a href="https://bugs.eclipse.eclipse.eclipse.

</ li> <li>If you use a proxy server.</li> <li>If you are using an automatic configuration script for proxy settings.eclipse.Bypass proxy server for local addresses&quot. your Help browser might open to a blank page or display an HTTP error instead of a help page. Synchronize. if these addresses are not listed.al Tasks</a> section in the At manual. and are not sure that the script is correct. make sure that the &quot.Use automatic configuration script&quot.User Assistance</a></h 3> <h4>Welcome page not displayed properly (Linux/Unix)</h4> <p>The default Welcome implementation is HTML-based and requires a supported bro wser in order to work.php#browserplatforms">SWT FAQ</a> for su pported browsers and setting up your browser to work with eclipse.eclipse. check box. open <b>Internet Options</b>.org/bugs/show_bug.</li> <li>If your host was configured to use DHCP for IP assignment. which has a different (simpler) appearance.cgi?id=831">831</a>) <h4> Using Internet Explorer in offline mode (Windows only)</h4> If you have been using Internet Explorer in Offline mode. add &quot. when you access the help system you will get a message indicating that the web page you requested is .org/bugs/show_bug. settings for proxies. (bug <a href="https://bugs.Exceptions&quot. and Bookmark buttons do not work for pages that are not actually installed with the product.0.localhost&quot.</li> <li>In &quot. (bug <a href="htt ps://bugs.Advanced&quot. <blockquote> <ol> <li>In the Control Panel.</li> </ol> </blockquote> <h4> Working disconnected from the network (Windows only)</h4> If you are experiencing problems when not connected to the network. </p> <h4>Help browser tool bar buttons do not work for some documents</h4> <p>The Help browser's Print.3 <a name="I-Platform-User-Assistance">Platform . Your system administrator can configure your LAN settings so that help documents can be accessed from the local help server. check box is cleared.127. Consult the <a href="http://www.Automatically detect settings&quot. However. or you may experience long delays when loading help documents.org/swt/faq. clear the &quot. If no supported browser can be found.1. Welcome falls back to it s Forms-based implementation.2.0. to the &quot.eclipse. select the <b>Connec tions</b> tab and choose <b>LAN Settings</b>. ensure that the &quot. </p> <h3>3.cgi?id=44216">4421 6</a>)</p> <h4> Help documents not displayed in a browser or very slow document loading (Windows only)</h4> If your LAN settings are not properly configured for local host access. you must install the loopback adapter from the Windows installation CD. is selected. you can always use the print command in the browser's context menu to print the page you're reading.

org/bugs/show_bug. </p> <p> Workaround:</p> <ol> <li>Go to the 'Preferences -&gt.eclipse.UI</a></h3> <h4>High contrast settings</h4> <p>Eclipse was tested for High Contrast using 1152 x 864 resolution in Windows XP High Contrast mode.cgi ?id=28609">28609</a>)</p> <h3>3.SWT</a></h3> <h4>Eclipse plug-in based on the SWT Browser throws exception</h4> .1 Presentation based workspaces incorrectly get new Min/Max behavior</h4> <p> Workspaces that are currently using the Eclipse 2.2.3.6 <a name="I-Platform-SWT">Platform .5 <a name="I-Platform-Text">Platform . chose properties.Text</a></h3> None. <h4>Toolbars only containing contributed controls exhibit display errors on Mac/ Linux</h4> <p> Currently there is no way on the Max or Linux platforms to define the <b>height< /b> for controls contributed to toolbars. select Windows Classic style from the Windows and buttons drop down on the Appearance tab. change the current presentat ion to 'Default' and select apply</li> <li>Change it back to the 2. in the Internet Explorer &quot. Display &gt. <h4>Help topics not highlighted in High Contrast mode (Windows only)</h4> <p>Windows High Contrast settings are not consistently picked up by Internet Explorer when they are set from the Accessibility Options utility as opposed to when they are set using the predefined schemes. Click <b>Connect</b> or deselect &quot. (bug <a href="https://bugs .cgi?id=2564">2564</a>)</p> <h4> OLE document crashes can cause Eclipse to also crash (Windows only)</h4> <p>If an OLE document crashes. it is recommended to set High Contrast as follows: Right click the desktop.1 Presentation. menu to return the system behavior to normal. Use High Contrast from the Windows XP Control Panel menu. and choose your scheme (for example High Contrast Black) from Color Scheme drop down.cgi?id=183003">183003</a>) </p> <h3>3.2. (bug <a href="https://bugs. On Windows XP.2.eclipse. Eclipse can crash.4 <a name="I-Platform-UI">Platform . nor will those platforms respect the size returned by the control's <c ode>computeSize</code> method.eclipse. Appearance' page.org/bugs/show_bug.1 Presentation will incorrectl y 'inherit' the new min/max behavior when opened with 3. or the workbench menus can become inconsistent. <h3>3.not available offline or a blank page will display.File&quot. You can select this mode by selecting Accessibility Options &gt. even if the contents have already been saved.Work Offline&quot. (bug <a href="https://bugs.</p> <h4> Dirty state not tracked properly for OLE documents (Windows only)</h4> <p>The dirty state for an OLE document is not updated properly.</p> <h4>2.org/bugs/show_bug. select 'OK' and 'Yes' to the restar t prompt</li> </ol> When the workbench re-opens the old min/max behavior will be restored. If you encounter this issue there is currently no truly viable workaround. This causes Eclipse to prompt to save the contents of the editor when the document is closed.

Which platforms support the SWT Browser?&quot. This situation can be encountered when copying from an Eclipse target workbench.org/bugs/show_bug.eclipse.locking=none</code> </p> <h4>Strings may be truncated or incorrectly wrapped on RHEL5 (Linux GTK only)</h 4> <p> Strings on wrapping Controls may not appear correctly in some locales on RHEL5 a .</a>. you could launch eclipse as follows: <br/> <code>eclipse -vmargs -Dosgi.org/bugs/show_bug.No locks available&quot ..eclipse. The workaround is to place a working ve rsion of Windows\System32\USP10. The workaround is to use the default heap size. The org.org/bugs/show_bug.<p>The SWT Browser widget uses a platform-specific web browser to render HTML.e. i. (bug <a href="https://bugs. If using this VM you must disable the JIT with the -Xnojit vm argument to avoid the crashes (see bug <a href="https://bugs. the conversion to Kanji must be done one ideogram at a time.org/bugs/show_bug. To launch eclipse you must disable file locking using the osgi. Eclipse crashes while the user is typing in an editor. launching eclipse using <code>-vmargs -Xmx[any size]</code> can cra sh eclipse when the FileDialog is opened.eclipse.SWTError exception (&quot.locking=none -Xnojit</code> </p> <h4>Eclipse won't start (Linux GTK PPC only)</h4> <p>Eclipse fails to create a lock file with reason &quot.cgi?id=116730">116730</ a>).php#browserplatforms"> &quot.eclipse.) is thrown on platforms that don't meet the requirements for running the Browser widget.org/swt/faq.cgi?id=56390">56390</a>)</p > <h4>Eclipse hangs when pasting from an unresponsive application (GTK only)</h4> <p>If the application that is supplying the clipboard material is unresponsive. (bug < a href="https://bugs. (bug <a href="https://bugs.</p> <h4>Opening File Dialog crashes eclipse (Vista only)</h4> <p>On Vista.cgi?id=44915">44915</a>)</p> <h4>IME conversion problem (Solaris GTK only)</h4> <p>When typing Japanese text. Supported platforms and prerequisites are listed on the SWT FAQ item <a href="ht tp://www. The command line for launching Eclipse with this vm should be: <br/> <code>eclipse -vmargs -Dosgi.swt.eclipse. (bug <a href="https://bugs.5 VM (Linux GTK PPC only)</h4> <p>When running on the IBM Java 5. suspending the target workbench at a breakpoint and pasting into the hosting Eclipse workbench.No more handles&quot.eclipse.DLL in the Eclipse startup directory or uninstall Service Pack 2.org/bugs/show_bug.eclipse. the paste operation hangs Eclipse for several minutes.0 VM. For example. do not use the <code>-Xmx</ code> VM args.cgi?id=226636">2266 36</a>)</p> <h4>Typing in an editor crashes with IBM 1.locking property.cgi?id=188317">188317</a>)< /p> <h4>Crash while editing text (Windows XP with SP2 only)</h4> <p>Some users who have installed Service Pack 2 on Windows XP have experienced crashes while using editors in Eclipse.

7. (bug <a href="https://bugs. clipping problems and pixel corruption can occur if the SWT client uses non-advanced GC calls. which will instruct SWT to not attempt to use IA2 interfaces.</p> <h4>Slider controls do not draw on Ubuntu</h4> <p>Sliders do not work on Linux distros with overlay scrollbars enabled (such a s Ubuntu 12.s a result of a bug in Pango version 1.eclipse.org/bugs/show_bug. (See Bug <a href="https://bugs.UseIA2=false</code> when launching Eclipse or your SWT application.</p> <h4>Toolbar controls on GTK are not properly sized</h4> <p>There is a known problem in ToolItem that prevents control set in separators from being sized properly.org/bugs/show_bug.cgi?id=313182">313182</a>)</p> <h4>Drawing problems when using non-advanced graphics on recent GTK versions</h4 > <p>On modern Linux distributions with a GTK version greater than 2. (bug <a href="https://bugs .18. Window-Eyes 6 will cause Eclipse to crash.04).UseIA2</code> with value <code>false</code>.org/bugs/show_bug.</p> <p> The workaround for these cases is to specify Java property <code>org.eclipse. and JAWS 8 and 9 can cause SWT applic ations to crash. the menu s from the workbench will not appear in the top desktop menu bar. A workaround for this is to disable the overlay scrollbars (export LIBOVERLAY_SCROLLBAR=0 ) before launching Eclipse.x. the actual selection ranges (in memory) differ from the visual representation of the selection.org/bugs/show_ .cgi?id=231951">231951</a>) </p> <h4>Block Selection functionality provided by StyledText is not BIDI aware</h4> <p> When the orientation of characters under the left and right edges of the block selection rectangle are not the same.</p> <h4>BIDI Segments in Text controls</h4> <p>BIDI Segments in text controls only work on Windows and GTK. An easy way to se t this property is to specify VM argument <code>-Dorg.cgi?id=277929">277929</a>) </p> <h4>Older versions of some Windows screen readers no longer work with Eclipse</h 4> <p>JAWS versions 8 and 9 and Window-Eyes version 6 no longer work well with Ecli pse and other SWT applications. These problems seem to b e caused by low-level bugs in the interactions between GDK and X.x.eclipse.14. (bug <a href="https://bu gs. but these older screen reader versions contain partial implementations of IAccessible2 that do not follow the current IAccessib le2 specification. This problem can be fixed by upgrading the in stalled Pango library to a version that is newer than 1.accessibility.eclipse. This happens because IAccessible2 support was added to SWT for Eclipse 3.accessibility.14.swt.eclipse.</p> <h4>Menus do not appear in Unity desktop menu bar</h4> <p>On recent Ubuntu Linux distributions that feature the Unity desktop.swt .eclipse. They will cont inue to appear in the shell.

for backwards compatibility the CVS capability is auto-enabled in existing workspaces that already contain CVS projects.Team .7 <a name="I-Platform-Team-CVS">Platform .cgi?id=15724">15724</ a>)</p> <h4>&quot. In order to establish the connection you must exit and restart Eclipse.bug.cgi? id=21180">21180</a>). should always work. This may cause problems with CVS servers that are running server scripts in response to certain commands. and should be compatible with future releases in that stream unless text message formats change (the last tested server was 1.22).org/bugs/show_bug.Terminated with fatal signal 10&quot.Unknown response&quot. the Eclipse CVS client has been tested with builds up to 1.eclipse. One situation involves using an external communications client (e.13. (bug <a href="https://bugs. As a result.3</h4> <p>CVS now uses the Platform proxy settings.2.cgi?id=66977">6697 7</a>)</p> .g. error using ext connection method</h4> <p>There are a few situations that can result in an &quot.org/bugs/show_bug.</p> <h4>SSH2 proxy settings lost upgrading to 3. The auto-enabling function may not run if the team support plugin is not loaded at startup. Additional information on how to use CVS from Eclipse can be found in the <a href="http://wiki. rsh or ssh) that adds CRs to the communications channel (bug <a href="https://bugs. error from server</h4> <p>There is a bug in the CVS server related to some compression levels. and do not apply to other repository providers. the connection may continue to fail even when the network problem is fixed.cgi?id=23581">23581</a>)</p> <h4>&quot.</p> <h4> CVS server compatibility</h4> <p>The CVS plug-in parses messages returned from the CVS server. Commit.12. any CVS proxy settings will be lost and must be re-entered on the General&gt. Another involves Eclipse not properly reading the stderr output of the external communications tool.11.eclipse.php/ CVS_FAQ">Eclipse CVS FAQ</a>.eclipse.X feature releases of CVS. such as Checkout.eclipse.12.org/bugs/show_bug. (bug <a href="https://bugs.cgi?id=9295">9295</a>)</p> <h4>&quot.CVS</a></h3> <p>The following are known problems with the CVS repository provider only. If you get this error.Network Connections prefer ence page. but there may be problems with more advanced commands such as Synchronizing and Browsing the repository. (bug <a href="https://bugs. However.Received broken pipe signal&quot. The CVS plug-in is compatible with all stable 1.org/bugs/show_bug. error messages when using the ext connection method.ecl ipse.11. As for the 1.org/bugs/show_bug.cgi?id=23575">23575</a> and <a href="https://bugs.cgi?id =11633">11633</a>)</p> <h4>A disabled CVS capability may not be auto-enabled in existing workspaces</h4 > <p>New in 3.org/index. However. Basic functionality.org/bugs/show_bug.eclipse.eclipse. future releases could easily break the Eclipse CVS client. (bugs <a href="https://bugs.0 is the ability to disable capabilities and the CVS support in Eclipse can be disabled. error from server</h4> <p>Eclipse sometimes performs multiple commands within a single connection to the server. If the format of these messages is not as expected.cgi?id=377961">377961</a>) </p> <h3>3.Unknown response&quot. (bug <a href="https://bugs. </p> <h4>Connection cannot be found after initially missing</h4> <p>If a connection initially fails due to a network problem. changing the compression level on the CVS preference page may help. and Update.X builds of the CVS server. some of the plug-in's functionality may be missing.eclipse.org /bugs/show_bug.

4 or greater. Eclipse will use it prior to proxy settings declared using env variables .enableGnome"</code> switch. </p> . or a certificate authentica ted by an unknown third party. This feature is disabled by default.core.enableGnome</pre> <h3>3.jar file). If set.eclipse. On a second startup using the same install path. the extension location is added again (bug <a href="https://bugs.cgi?id=244483">24 4483</a>).</p> <h4>Extension location is lost if the install path changes</h4> <p>A previously configured extension location may be temporarily removed if the install is moved or mounted under a different path. to enable it launch Eclipse with <code>"-Dorg. That is.xml or content.</p> <pre>eclipse. This only happens when the link file that configures the extension location uses a relative path that points to a directory under the Ecl ipse install.eclipse.2.4-based update sites</h 4> <p>Feature patches can only be installed from update sites designed for Eclipse 3.Install/Update</a></h3> <h4>Manually installing features and plug-ins on a FAT file system (Windows only )</h4> <p>When features and plug-ins are manually installed on top of an Eclipse-based product install located on a FAT file system that has already been run at least once.eclipse.net.</p> <pre>eclipse -Dorg. Th is typically means the server is using a self-signed certificate. This data can be generated by building an update site usin g Eclipse 3.org/bugs/show_bug. or running the p2 metadata generator on an update site built using ear lier versions of the Eclipse SDK. See the help topic <i>Generating p2 metadata</i> for more de tails on running the p2 metadata generator (bug <a href="https://bugs.<h4>Builder output files may appear as changed</h4> <p>When folders containing build output are shared they may get improperly marked as dirty when build output is generated. the update site must have the necessary metadata for Equinox p2 (a content.4 or newer.exe -clean </pre> <h4>Connecting to untrusted sites using https</h4> <p>You cannot install or update software from a site using https whose certifica te is not chained to a trusted root certificate in your local certificate store.</p> <h4>Enabling GNOME proxy support</h4> <p>GNOME applications can make use of proxy settings defined in this environment . <br/></p> <h4>Feature patches can only be installed from Eclipse 3. That is.8 <a name="I-Platform-Install-Update">Platform .org/bugs/show_bug. the product must be explicitly restarted with -clean.cgi?id=95403 ">95403</a>). Specifically.net.eclipse.core.

eclipse. do not always suspend execution).0 VM.org/bugs/show_bug.formatter.formatter.e. IRegion[].6.eclipse.eclipse. (bug <a href="https://bugs.6. The problem occurs on Windows and Linux platforms.3 <a name="I-JDT">Java development tools (JDT)</a></h3> <h4>Multiple regions formatting in a given source snippet</h4> In version 3.eclipse.CodeFormatter#K_SINGLE_LINE_COMMENT</co de></li> <li><code>org.0_14</h4> Developers debugging applications on Sun's 1.eclipse.org/bu gs/show_bug.formatter.9 <a name="I-Platform-Debug">Platform .eclipse. String.</p> <h3>3. int.core.<h3>3.jdt.cgi?id=233967">233967</a>).core.jdt. copy. the new API method <code>org.0 JREs</h4> <p>Creating and applying refactoring scripts sometimes fails with Sun 6. The workaround is to use the <code>-XX:+UseParallelGC</code> VM option.0_14 virtual machine should be aware that breakpoints are unreliable (i.10 <a name="I-Platform-Compare">Platform . leaving no trace of a field reference.cgi?id=279137">279137</a>). A workaround is to use a J2SE 5.eclipse.Compare</a></h3> <p>None.2.(bug <a href="https://bugs.eclipse.0 JREs due to a bug in the XML parser that is shipped with those VMs. (Known problems with the Java debugger appear below in the <a href="#IJDT">JDT</a> section.formatter.<br/> Even if specified.&nbsp.eclipse.2. <h4>Searching for constant field references</h4> <p>Search does not find references to constant fields inside binaries because the Java Language Specification mandates that constant field values be inlined in the class file's byte codes.org/bugs/show_bug.CodeForm atter.cgi?id=12044">12044</a>)</p> <h4> Cut.jdt.CodeFormatter#K_MULTI_LINE_COMMENT</cod e></li> <li><code>org.CodeFormatter#K_JAVA_DOC</code></li> </ul> This will be fixed in a future release (bug <a href="https://bugs. (bug <a href="https://bugs.core.)</p> <h3>3. <h4>Some refactoring script operations fail with Sun 6. copy.core.org/bugs/show_bug.jdt. this method does not currently accept comments of the followi ng kinds: <ul> <li><code>org. The workaround is to use these actions from the Navigator view instead. (bug <a href ="https://bugs.cgi?id=30 442">30442</a>)</p> <h4>Breakpoints unreliable running Sun 1. Another workaround is to replace the XML parser using the .Debug</a></h3> <p>None. String)</code> has been added to allow the formatting of several regions in a source snippet wi th a single pass.0 VM or an IBM 6.org/bugs/show_bug. including the Package Explorer. paste not working for linked resources in views showing Java elements</h4> <p>The cut. This is an issue with the VM and not with Eclipse. and paste actions do not work for linked files and folders appearing in views that show Java elements.4.format(int.cgi?id=34568">34568</a>)</p> <h4> Java working sets not working correctly for elements from JRE system library container</h4> <p>Applying a working set consisting entirely of elements from the JRE System library container as a filter to the packages view might result in an empty Package Explorer.

jar from Apache.g.org/bugs/show_bug. generating Javadoc fails if the package or class name contains GB18030 characters.Runtime. Since Javadoc is created using the Javadoc executable provided with the JDK.eclipse.exec(.com/javase/6/docs/technotes/guides/standards/ind ex.apache. xalan-j_2_7_1-bin.com/bugdatabase/view_bug. When an unchecked exception is configured to <b>not</b> suspend execution in a specific class.path-to-your-JavaSE6 .)</code>) when the specified command line contains GB18030 characters.eclipse. This limitation means the debugger cannot launch applications when the command line it generates contains GB18030 characters..lang. Eclipse bug <a href="https://bugs. xalan.or g/bugs/show_bug.cgi?id=4181">4181</a>) <h4>Cannot run or debug class in a project with GB18030 characters in project name</h4> <p>Most class libraries do not properly support the creation of a system process (via <code>java. (bug <a href="https://bugs.sun. html">here</a>.do?bug_id=6760982 ">http://bugs..org/xalan-j/downloads. (bug <a href="https://bugs.NoClassDefFoundError</code> when running Java programs with non-Latin characters in the package or class names..html">Java Endorsed Standards Override Mechanism</a>: </p> <ol> <li>Get original versions of xml-apis.oracle. execution will still suspend when the user pref erence to suspend on uncaught exceptions is on.org/bugs/show_bug.jar. (bug <a href="https://bugs.sun.org/bu gs/show_bug.)</code>) when the specified command line contains GB18030 characters.cgi?id=32215">32215</a>)</p> <h4> Unable to debug stack overflows</h4> .lang.cgi?id=33844">33844</a>)</p> <h4>Cannot generate Javadoc for packages with GB18030 characters in the name</h4 > <p>Most class libraries do not properly support the creation of a system process (via <code>java.jar.eclipse.or g/bugs/show_bug. e. (bug <a href="https://bugs.eclipse. </li> </ol> (see Sun bug <a href="http://bugs.com/bugdatabase/view_bug. (bug <a href="https://bugs. and seri alizer.cgi?id=32206">3 2206</a>)</p> <h4>Cannot detect installed JRE with GB18030 characters in path name</h4> <p>Automatic JRE detection fails when the JRE is stored in a directory containing GB18030 characters in its name.Runtime.exec(.org/bugs/show_bug.do?bug_id=6760982</a>. xercesImpl.lang.jar.zip from <a href="http://xml. The workaround is to package the class files as a JAR file and run the program out of the JAR and not from the file system directly.cgi?id=262820">26282 0</a>) <h4>Suspend on uncaught exception overrides exception breakpoint location filter s</h4> <p>Exception breakpoints can be configured with location filters (inclusive and exclusive).cgi?id=66770">66770</a>)</p> <h4>Running Java programs with non-Latin-1 characters in package or class names< /h4> You get a <code>java.eclipse. </li> <li>Unpack the archive and copy the 4 JARs into <code>&lt.0-install&gt..ec lipse.\jre\lib\endorsed\</code>.<a href="http://download.

As well. and later. Evaluations cannot be performed on threads suspended by the suspend action.sun. a breakpoint or step request).<p>If a debug session suspends on a <code>java. but the addition or removal of members may not be. The Java Debug Interface (JDI) requires that the thread in which an evaluation is performed be suspended by a user event (that is.StackOverflowError</code> exception (due to an exception breakpoint). the debugger may not be able to reliably interact with the target JVM past this point.0 VMs was unreliable. and implicit evaluations such as <c ode>toString()</code> invocations in the <b>Variables</b> view). <p>When a snippet is run in the scrapbook which directly or indirectly calls <co de>System.VMDisconnectedException</code> being displayed in the scrapbook editor.org/bugs/show_bug. an error message will appear to the effect of &quot. hot code replace is limited to changes that a particular virtual machine implementation supports..1.eclipse.sun. it is .VMDisconnectedException</code> being displayed in the scrapbook editor.exit(int)</code>.eclipse. changes within existing methods may be supported. (bug <a hr ef="https://bugs. (bug <a href="https://bugs.</p> <p>Terminating a scrapbook page while it is performing an evaluation results in a <code>com.cgi?id=34 440">34440</a>)</p> <h4> Missing debug attributes</h4> The debugger requires that class files be compiled with debug attributes if it is to be able to display line numbers and local variables.4.) are compiled without complete debug attributes.</p> <h4> Debugging over slow connections</h4> A global Java debug preference specifies the debugger timeout.4. Quite often. the debugger may not be able to retrieve any debug information from the target JVM. As well. and will result in a stack trace for a <code >com.x VMs.jdi. For example. Slow connections may require that this value be increased. <h4> Updating of inspected values</h4> When inspecting the result of an evaluated expression in the debugger. <h4> Using Hot Code Replace</h4> <p>Hot code replace is supported on JDK 1. The debugger will attempt to replace all class files that change in the workspace as the user edits and builds source code. Changing the timeout value only affects subsequently launched VM.cgi?id=19217">19217</a>)</p> <h4> Evaluation limitation</h4> <p>The debugger uses threads in the target JVM to perform evaluations (both explicit evaluations that the user requests.org/bugs/show_bug. the threads which did not encounter the breakpoint are not in a valid state to perform an evaluation. class libraries (for example. not VMs that are already running. &quot.jdi.jar</code>&quot. When an evaluation is attempted in a thread that is not in a valid state to perform an evaluation. The timeout value can be edited from the <b>Java &gt.4.</p> <p>Note that hot code replace and stepping on JDK 1.lang. which is the maximum amount of time the debugger waits for a response from the target VM after making a request of that VM.Thread must be suspended by step or breakpoint to perform method invocation&quot. Debug </b>pr eference page. the evaluation cannot be completed. However.</p> <h4> Scrapbook</h4> Setting a breakpoint inside a scrapbook page is not supported. and IBM J9 VMs. The underlying VM problems were fixed in JDK 1. when a breakpoint is configured to suspend the JVM rather than just the individual thread.<code>rt. and thus local variables and method arguments for those classes are not visible in the debugger.

6 VM is compatible with.org/bugs/show_bug. To remove such debug targets from the debug UI.cgi?id=262542">262542</a>) <h4>Java Annotation Processing</h4> <p>Some methods in the processing API are unimplemented when compiling within th e IDE. termination works properly.eclips e. debug target. not while editing.. and will throw <code>UnsupportedOperationException</code>. key).delete&quot.err</code>.</p> <p> Java 6 annotation processors are supported in the batch compiler and in the IDE.cgi?id=188558">188 558</a>)</p> <p> Java 5 annotation processors are supported in the IDE only. For example. Java 6 processors are only executed during a build. select <b>Terminate and Remove</b> from the debug view's pop-up menu (or use the shortcut &quot. By design.6 JREs by removing them from the Installed JREs preference page. Error messages will appear in the log eac h time JDT attempts to determine which execution environments a 1.&quot.org/bugs/show_bug. if an expression results in an object. button on the Installed JREs preference page.</p> <h4>Java indexing encounters problems when a folder is used both as a source and a class folder</h4> <p>Java indexing encounters problems when a folder is used both as a source fold er . If a debug target has no suspended threads. Associated system processes in the OS may not be properly cleaned up. or system process associated with a debug target running on the IBM 1. Slow annotation processors can cause a slowdown of the editing experience. fields of that object will be updated in the inspector as they change in the running program (since the value bound to fields in an object can change). Java 5 processors can be executed while editing.eclipse.6 VMs only execute on 64-bit architectures but JDT will detect 1. 6 VMs installed on 32-bit architectures when a new workspace is started or when the user presses the &quot . If this occurs.Search. (bug <a href="https://bugs. and the value of a primitive data type cannot change).cgi?id=1631">1631</a>) <h4>Java 6 and MacOS</h4> Apple JavaSE-1. (bug <a href="https://bugs.eclipse. the output may not appear immediately unless the native performs a flush on the output buffer. <h4> Stepping over native methods that perform I/O</h4> When the debugger steps over native methods that perform I/O to <code>System. (bug <a href="https://bugs. As the counter is changed in the running program.important to note that the result displayed is the result of that expression at the time it was evaluated. JDT can be c onfigured to ignore 1. as well as during a build. However. you may wish to turn off <b>Enable processing in editor</b> on the <b>Java Compiler &gt.3 JVM on the Linux platform does not work when the associated debug target has a suspended thread.it is displaying the value of an expression. the value displayed in the Expressions view is the value when the expression was evaluated. when inspecting a simple integer counter (primitive data type).out </code> or <code>System. the inspected result will not change (since the view is not displaying the value bound to a variable .3 JVM on Linux (Linux only)</h4> Terminating a launch.. Annotation Processing</b> properties page of your Java project. <h4> VM and process termination running on IBM 1.org/bugs/show_bug.

it will require circular dependencies between the plug-in and fragment projects. some comments may be lost. and when unzipped.org/bugs/show_bug.core.. Also.registry.swt as binary with source attached. when shipped. it is because.org/bugs/s how_bug.eclipse. org. PDE will not unzip the source for the org.org/bugs/show_bug. (bug <a href="htt ps://bugs. PDE will not unzip the source for the org.4 <a name="I-PDE">Plug-in Development Environment (PDE)</a></h3> <h4>Feature manifest editor does not preserve all comments</h4> <p>When a non-source page of the feature manifest editor is used.projects with source folders&quot.cgi?id=59502">59502</a>)</p> <h4>PDE will not unzip source zips of some plug-ins</h4> <p>In the plug-in import wizard. it is strongly advised to use different folders for sources and binary classes. when you choose to import plug-ins as &quot.eclipse. (bug <a href="https://bugs.cgi?id=98579">98579</a>)</p > <h4>Headless build needs to be run from a fully qualified path</h4> . (bug <a href="https://bugs.osg i.runtime. To work around the problem.osgi. (bug <a href="https://bugs. so you would still be able to read the source. To avoid the creation of plug-in projects that won't compile.util and org.eclipse. the swt code is spread across a plug-in and a fragment.eclip se.org/b ugs/show_bug.eclipse. Therefore.eclipse. This typical path limitation can be worked around by creating the jar of the pro blematic plug-in by using the Jar export wizard. Although the overall content and most of the comments are preserved. PDE will import these plug-ins as binary and attach source.in a project and as a class folder in another project. you can either expo rt the plug-ins one by one. To avoid this kind of problem. compile errors occurs on export. (bug <a href="https://bugs. you just won't be able to modify it. (bug <a href="https://bugs. These circular dependencies are at minimum marked as warnings by the JDT compiler and may result in unpredictable build behavior. some classes might be dropped from the resulting archive if their fully qualified name is too long.cgi?id=309903">309903</a>)</p> <h3>3.services.org/bugs/show_bug.eclipse.org/bugs/show_bug. when this peculiar setup is used.cgi?id=19482">19482</a>)</p> <h4>Export of plug-in may silently drop classes</h4> <p>When exporting a plug-in using the plug-in. This is because the source ZIPs contains code that will not compile when unzipped as it requires additional JARs that are not part of the SDK. In this case.cgi?id=97150">97150</a>)</p > <h4>Compilation errors when exporting projects not stored outside of the workspa ce</h4> <p>When exporting multiple plug-ins and one is stored outside of the workspace.ant.apache. PDE always imports org.eclipse.cgi?id=66314">66314</a>)</p> <h4>Emacs key bindings do not work in manifest editor fields</h4> <p>Non-default key bindings currently do not work in fields on non-source pages of the PDE manifest editors.compatibility.eclipse. or change their location. Hence. org.swt plug-ins. feature or product wizards.eclipse. PDE will conve rt changes back into XML by regenerating the file.eclipse. the Java Search might miss matches located in such a folder.

you would typically use:</p> <blockquote> <p><code>eclipse -vmargs -Xmx&lt. This is because PDE modifies the target platform of the application to point at the running plug-ins from the host (target weaving). Special instructions for Mac OS X are listed <a href="#macosx">below</a>.eclipse.pde.exe</code>.eclipse./.exe</samp>. but more may be needed depending on your plug-in configuration and use. to increase the available heap memory.memory size&gt.cgi?id=294005">294005</a>) </p> <h4>Reusing a workspace after changing architectures silently breaks PDE models< /h4> <p>If a workspace is reused on a machine with a different architecture.metadata/. (256 megabytes -. which must follow all other Eclipse specific arguments.</code> value set to greater than &quot. The default maximum is 64 megabytes. When the VM runs . Eclipse allows you to pass arguments directly to the Java VM using the <code>-vmargs</code> command line argument. the executable file is call ed <samp>eclipse.org/bugs/show_bug.<p>When running a headless build using the scripts provided by pde build. not included with the Eclipse SDK). delete the metadata in &lt. If installed at <code>c:\eclipse-SDK-3.eclipse. (bug <a href="https://bugs.cgi?id=139554">139554</a>) </p> <h4>Importing in Eclipse application fails if plug-in exists in host workspace</ h4> <p>When running an Eclipse application (self-hosting) importing plug-ins will no t work correctly if the plug-in being imported exists in the host Eclipse's workspace.</code></p> </blockquote> <p>with the <code>&lt. the number of additional plug-ins you are using. </p> <p> When using a Sun VM. To work around this problem. and the number of files you will be working with. This also affects the PDE test suite. you could conceivably have to incr ease this amount. and is located in the <code>eclipse</code> sub-directory of the install. Thus.plugins/org. Eclipse will allocate up to 256 megabytes of Java heap memory. On Windows.8-win32</code>.8-win32\eclipse\eclipse.core . you can start the Workbench by running the Eclipse executable included with the release (you also need a Jav a SE 5 JRE. the executable is <code>c:\e clipse-SDK-3.org/bugs/show_bug.</p> <h3>Allocating enough memory and solving OutOfMemoryErrors</h3> <p>By default. depending on the JRE that you are running. the PDE models used to build plug-ins may silently fail. <a name="RunningEclipse">Running Eclipse</a></h2> <p>After installing the Eclipse SDK in a directory.memory size&gt. <b>Note:</b> Set-up on most other operating environments is analogous. (bug <a href="https://bugs. (bug <a href="https://bugs.workspace&gt.cgi?id=350172">350172</a>) </p> <h2>4.256M&quot. However. Th is should be ample for all typical development tasks.org/bugs/show_bug.eclipse. you may also need to increase the size of the permanent generation memory. the pr operties <code>builder</code> and <code>buildDirectory</code> must refer to a fully qualified path.the default).

you start Eclipse by double clicking the Eclipse application. they may change your path and could result in a different Java VM being used when you next launch Eclipse.<code>-data</code>&quot. Select &quot.</p> <h3>Specifying the Java virtual machine</h3> <p>Here is a typical Eclipse command line:&nbsp.</p> <p>To create a Windows shortcut to an installed Eclipse:</p> <ol> <li>Navigate to <code>eclipse. The maximum permanent generation size is increased using the -XX:MaxPermSize=&lt . This will present you with a popup menu. If you need to pass arguments to Eclipse. in the popup menu.5.<code>-vm</code>&quot. consult your VM documentation for more details. it may crash or hang during class loading.ini</code> file inside the Eclipse application bundle: select the Eclipse application bundle ico n while holding down the Control Key. </p> <p> Note that setting memory sizes to be larger than the amount of available physica l memory on your machine will cause Java to &quot. the first thing you see is a dialog that allows you to select where the workspace will be located.0_07 or greater. you'll have to edit the <code>eclipse. Eclipse will look on the O/S path.memory size&gt.exe</code> in Windows Explorer and use Create Shortcut on the content menu.)</p> <h3><a name="macosx">Mac OS X</a></h3> <p>On Mac OS X. Locate <code>eclipse.</p> <blockquote> <p><code>eclipse -vm c:\jdk6u22\jre\bin\javaw</code></p> </blockquote> <p><i>Tip:</i> It's generally a good idea to explicitly specify which Java VM to use when running Eclipse.ini</code> file in the <code>Contents/MacOS</code> sub-fold . </p> <h3>Selecting a workspace</h3> <p>When the Workbench is launched. The workspace is the directory where your work will be stored.Show Package Contents&quot . (You can drag the shortcut to the Windows Desktop if you want to keep it in easy reach.. In the Target: field append the command line arguments. This is achieved with the &quot. This failure is less common when using Sun JRE version 1. If you don't use &quot.thrash&quot.out of permanent generation memory.</li> <li>Select the shortcut and edit its Properties.</code></p> </blockquote> <p>This argument may not be available for all VM versions and platforms.<code>-vm</co de>&quot.</li> </ol> <p>Opening this shortcut launches Eclipse. For shared or multi-workspace installs you must explicitly specify the location for your workspace using the dialog (or via the &quot. If you do not specify otherwise. which will severely degrade your performance. Eclipse creates the workspace in your user directory. This workspace directory is used as the default content area for your projects as well as for holding any required metadata. command line argument as illustrated above. as it copies object s back and forth to virtual memory. argument:</p> <blockquote> <p><code>eclipse -vmargs -XX:MaxPermSize=&lt.memory size&gt. When you install other Java-based products. command line argument).

on other platforms. command line argument to pre-select the workspace location).-initialize&quot. Typically this is located inside the directory in which Eclipse was installed in a sub-directory called &quot.Start in:&quot..) and find your workspace directory in the dialog that appears.exe&quot.-data&quot. to specify your workspace. you can use the symbolic link &quot.</li> </ol> <h3>Users who do use &quot.eclipse.</h3> <p>If you weren't previously using &quot. this means you have to make a copy of the Eclipse install if you want to open more then one workspace at the same time (bug <a href="https://bugs. start System Preferences. then the Privacy tab.+&quot. Since Eclipse cannot open more than one workspace.</li> <li>Install the new version of Eclipse in a new location.-data&quot.</li> <li>Copy this workspace directory to a new.org/bugs/show_bug.4 and later.eclipse. argument in your shortcut properties. </p> <p>On Mac OS X 10.</h3> . <a name="Upgrading"></a>Upgrading Workspace from a Previous Release</h2> <h3>Users who don't use &quot.eclipse&quot. after unzipping Eclipse distribution.cgi?id=139319 ">139319</a>).</p> <h2>5.. It refers to the eclipse executable inside the applica tion bundle and takes the same arguments as &quot. To prevent this. The reason for this behavior is that every UI application on Mac can open multiple documents.er and open it with your favorite text editor to edit the command line options. </p> <p> On MacOS X you can only launch a UI program more than once if you have separate copies of the program on disk. For Windows users. follow these steps to upgrade:</p> <ol> <li>Find the workspace directory used by your old version of Eclipse. this is specified by the &quot. so typically there is no need to open a program twice.<c ode>-data</code>&quot.</li> <li>Start this new version of Eclipse and select this location using the workspace chooser dialog at startup (or use &quot. option from an account that has a write access to the install directory. you should re-install them in the new Eclipse. separate from any old version of Eclipse. then click the Add button (&quot. If you are using a shortcut or script to launch Eclipse. run Eclipse once with the &quot. then it will be under the current working directory of that shortcut or script in a sub-directory called &quot. </p> <p>If you need to launch Eclipse from the command line.</li> <li>If you had installed additional features and plug-ins into your old Eclipse. in the top-level eclipse folder. empty location outside of any Eclipse install directory.-data&quot.<code>workspace</code>&quot. select the Spotlight icon.workspace&quot. To achieve this.</p > <h3><a name="SharedInstall">Shared Install</a></h3> <p>The startup speed of a shared install can be improved if proper cache informa tion is stored in the shared install area. you may notice a slow down when working with sign ificant numbers of resources if you allow Spotlight to index your workspace.

</li> <li>If you had installed additional features and plug-ins into your old Eclipse.8 with previous releases</h3> <h4>Sharing projects between heterogeneous Eclipse 3.7</h4> <p>Special care is required when a project in a team repository is being loaded and operated on by developers using Eclipse-based products based on different feature or plug-in versions. empty location outside of any Eclipse install directory as a backup. contents. there are no such guarantees. This section provides advice for what to do and not to do. It is always recommended that you install software via the <tt>Help &gt. you can do one of the following:<br/> <ul> <li>Add the system property (<code>-DresolveReferencedLibrariesForContainers=tru e</code>) to the <code>-vmargs</code> list on start-up.</p> . and often a small number of removed bundles. you won't be able to use it again with an older version of Eclipse.8 and 3.back in time&quot. and interpretation of metadata files in the workspaces may be specific to a particular feature or plug-in version.<p>If you were previously using the &quot.</p> <h3> Users who use User Libraries or classpath containers that contain JARs refe rencing other libraries via Class-Path in the MANIFEST. argument to start Eclipse. </p> <h2>6. you should re-install them in the new Eclipse. The workspace compatibility guarantees only cover cases where all developers upgrade their Eclipse workspaces in lock step. <a name="InteroperabilityWithPreviousReleases">Interoperability with Previous Releases</a></h2> <h3>6.1 Interoperability of Release 3. This may cause your previously dropped in bundles to no longer resolve and run.</li> </ul> </p> <h3>Dropped in bundles may not resolve after upgrade</h3> <p>If you have installed bundles by dropping them into the <tt>plugins</tt> or <tt>dropins</tt> directory. after you've upgraded your workspace.<code>-data</code>&quot. However. If you ever want to go &quot. In each new version of the Eclipse Platform. separate from any old versions of Eclipse.MF</h3> <p> If you want the referenced JAR files to be included in the classpath. In those cases there should be no problem with shared metadata. or</li> <li>Manually add the referenced JARs to the User Library or to the project. The general problem is that the existence.</li> <li>Install the new version of Eclipse in a new location.</li> </ol> <p><i>Note:</i> Copying your workspace is recommended because. you will need that backup.<code>-data</code>&quot. It addresses the specific issues with the Eclipse SDK. to an earlier release. when some developers are working in Eclipse 3. command line argument to pre-select the workspace location). and differ between versions.8 while others are working in Eclipse 3.</li> <li>Start this new version of Eclipse and select this location using the works pace chooser dialog at startup (or use &quot.7. they might no longer resolve when you upgrade to a new Eclipse Platform version. there are new versions of bundles included in the platform. your upgrade path is much easier:</p> <ol> <li>Optionally copy your workspace directory to a new. Install New Software</tt> mechanism so you are made aware of any install-time failure to resolve dependencies.

</li> </ul> <h4>Using Eclipse 3. The user then commits the updated project files.8 to develop a plug-in intended to work in Eclipse 3. The user commits the updated project files. 3. Target Platform </b>preference page to locate non-workspace plug-ins in an Ecl ipse 3.8 picks up the changes to a project from the shared repository. and is generally discarded or ignored without warning.x releases:</p> <ul> <li><b>Virtual folders</b> Eclipse 3.</li> </ul> <p>Here are some things to watch out for when sharing projects between Eclipse 3.8.8-specific information. The user modifies the project in a way that results in changes to the shared metadata file.<p>The typical failure mode is noticed by the 3.8 supports a notion of <i>resource filters</i> that did not exist in Eclipse 3. If such virtual folders are created in 3. Use the <b>Plug-in Development &gt .5 or earlier workspace.8 supports a set of built in path variables that can be used as the basis for linked resource locations.</li> <li>A user working in Eclipse 3. The user may be unaware that they have just taken a retrograde step until later when things start to malfunction. If such filters are added to resources in 3.7 shares this project from the same repository.8-specific information. Recommendation: avoid creating virtual folders where p roject compatibility with Eclipse 3.8 metadata is lost when a 3.7 or earlier. Such variables will not be defined automaticall y in Eclipse 3.</li> <li><b>Resource filters</b> Eclipse 3.5 or earlier workspace is requ ired. The user is generally unaware that shared information has just been lost as a result of their actions.5 or earlier is required.5 or earlier workspaces will need to define such path variables man ually.8.</li> <li>Another user working in Eclipse 3.8 to develop plug-ins that work in Eclipse 3.7 user saves changes and then commits the updated metadata files to the repository. causing the shared metadata file to be rewritten without any of the 3.8 supports a notion of <i>virtual folders</i> that did not exist in Eclipse 3. to the shared repository.5 or earlier is required.7.8-specific information in the shared metadata file is not understood by Eclipse 3. Recommendation: avoid creating resource filters where project compatibility with Eclipse 3.8 user. to the shared repository. including the updated shared metadata file. including the shared metadata file.5 or earlier workspace. users on 3. these folders will not be recognized.8 creates or modifies a project in a way that results in changes to a shared metadata file that rely on 3. The 3.5 or earlier. This ensures that the code for your plug-in is being compiled and .5 or earlier.7 install. and the project is subsequently loaded into an Eclipse 3.8 and earlier 3. If compatibility with 3. including the shared metadata file. Here's how things typically go awry:</p> <ul> <li>A user working in Eclipse 3. and the project is subsequently loaded into an Eclipse 3.5 or earlier.7</h4> <p>It is also possible (and reasonable) to use Eclipse 3.</li> <li><b>Predefined path variables</b> Eclipse 3. these filters will not be recognized.

and others 2009.</p> <p>(c) Copyright IBM Corp. Java and all Java-based trademarks are trademarks of Oracle Cor poration.1</strong></div></td> <td>J2ME Foundation 1. or both.1 or greater.5</strong></div></td> . or both.indicates that the bundle can only be run on JSE 1. extension points. Solaris. product. other countries. Windows NT. registered in the U. the &quot. and the Windows logo are trademarks of Microsoft Corporation in the United States.</td> </tr> <tr> <td><div align="center"><strong>1.3</strong></div></td> <td>J2SE 1.8 minimum execution environment&quot. or both. 2012</p> <h2><a name="Appendix1">Appendix 1: Execution Environment by Bundle</a></h2> <p>In the table below.3 or greater.1 . and plug-ins.0 or greater.3. other countries.)</p> <hr/> <p>Sun.</td> </tr> <tr> <td><div align="center"><strong>1.indicates that the bundle can only be run on Foundation 1.</p> <p>Apple and Mac OS are trademarks of Apple Computer.4.</td> </tr> <tr> <td><div align="center"><strong>F1.4 or greater. Neutrino.indicates that the bundle can only be run on Foundation 1. Foundation 1.S.</p> <p>Microsoft.</td> </tr> <tr> <td><div align="center"><strong>1.0</strong></div></td> <td>J2ME Foundation 1.8 release.</p> <p>QNX.4 . Inc.tested against Eclipse 3.0 is a subset of J2SE 1. Foundation 1. (The above list of concerns do not apply since they affect the layout and interpretation of files in the plug-in <i>project</i> but none affect the actual deployed for m of the plug-in. in the United States. Note that with the exception of some MicroEdi tion IO classes. Windows.1 is a subset of J2SE 1.. and service names may be trademarks or service marks of others. and Photon are trademarks or registered trademarks of QNX Software Systems Ltd. where the value is one of:</p> <table border="0" width="90%"> <tbody> <tr> <td align="center"><b>Entry</b></td> <td align="left"><b>Meaning</b></td> </tr> <tr> <td><div align="center"><strong>F1.7 APIs. other countries. Vista.3 . Note that with the exception of some MicroEdi tion IO classes. column indicates the minimum Java class library requirements of each bundle for the 3.</p> <p>IBM is a trademark of International Business Machines Corporation in the United States.</p> <p>Other company.3.0 . and other countries.4</strong></div></td> <td>J2SE 1.indicates that the bundle can only be run on JSE 1.

)</p> <table border="1"> <tbody> <tr> <td width="290"><strong>Bundle</strong></td> <td width="60"><div align="center"><p align="center"><b>3.jcraft.php?projectid=rt.indicates that the bundle can only be run on Java SE 5 or greater.codec</td> <td><div align="center">F1.jsch</td> <td><div align="center">1.org/projects/project-plan.apache.equinox #appendix">Equinox Project plan</a> for the execution environment requirements of bundles contributed via that pro ject.0</div></td> .</td> </tr> </tbody> </table> <p><b>Table of minimum execution environments by bundle.eclipse.5</div></td> </tr> <tr> <td>javax.jsp</td> <td><div align="center">1.sun.servlet</td> <td><div align="center">1.5</div></td> </tr> <tr> <td>com.</td> </tr> <tr> <td align="center"><b>n/a</b></td> <td>Unknown at the time of this revision.5</div></td> </tr> <tr> <td>javax.servlet.8<br/>minimum<br />execution<br/>environment</b></p></div></td> </tr> <tr> <td>com.indicates that the bundle can only be run on Java SE 6 or greater.6</div></td> </tr> <tr> <td>org.6</div></td> </tr> <tr> <td>javax.icu</td> <td><div align="center">1.<td>Java SE 5 .6</strong></div></td> <td>Java SE 6 .apache.</td> </tr> <tr> <td><div align="center"><strong>1.el</td> <td><div align="center">1.el</td> <td><div align="center">1.commons.4</div></td> </tr> <tr> <td>com.ibm.</b> (See also the <a href="http://www.2</div></td> </tr> <tr> <td>org.ant</td> <td><div align="center">J2SE-1.

apache.0</div></td> </tr> <tr> <td>org.lucene.4</div></td> </tr> <tr> <td>org.gogo.felix.ant.launching</td> <td><div align="center">1.logging</td> <td><div align="center">F1.apache.4</div></td> </tr> <tr> <td>org.apache.0</div></td> </tr> <tr> <td>org.win32</td> <td><div align="center">1.ant.core</td> <td><div align="center">1.4</div></td> </tr> <tr> <td>org.eclipse.apache.httpclient</td> <td><div align="center">F1.6</div></td> </tr> <tr> <td>org.eclipse.apache.core</td> <td><div align="center">1.analysis</td> <td><div align="center">1.eclipse.lucene</td> <td><div align="center">1.gogo.4</div></td> </tr> <tr> <td>org.eclipse.core</td> <td><div align="center">1.eclipse.apache.ui</td> <td><div align="center">1.commons.</tr> <tr> <td>org.glassfish</td> <td><div align="center">1.gogo.shell</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.4</div></td> .4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.jasper.4</div></td> </tr> <tr> <td>org.runtime</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.apache.commons.lucene.ant.compare.apache.4</div></td> </tr> <tr> <td>org.compare</td> <td><div align="center">1.apache.felix.command</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.eclipse.felix.compare.

0</div></td> .4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.1</div></td> </tr> <tr> <td>org.eclipse.boot</td> <td><div align="center">F1.beans</td> <td><div align="center">1.1</div></td> </tr> <tr> <td>org.filesystem</td> <td><div align="center">1.databinding.jobs</td> <td><div align="center">F1.eclipse.net</td> <td><div align="center">F1.1</div></td> </tr> <tr> <td>org.eclipse.eclipse.eclipse.eclipse.observable</td> <td><div align="center">F1.filebuffers</td> <td><div align="center">1.eclipse.eclipse.eclipse.databinding.0</div></td> </tr> <tr> <td>org.core.databinding</td> <td><div align="center">F1.property</td> <td><div align="center">F1.0</div></td> </tr> <tr> <td>org.core.core.0</div></td> </tr> <tr> <td>org.core.</tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.core.databinding.core.core.core.core.runtime</td> <td><div align="center">F1.resources</td> <td><div align="center">1.0</div></td> </tr> <tr> <td>org.core.eclipse.1</div></td> </tr> <tr> <td>org.eclipse.eclipse.expressions</td> <td><div align="center">F1.eclipse.1</div></td> </tr> <tr> <td>org.core.eclipse.contenttype</td> <td><div align="center">F1.core.externaltools</td> <td><div align="center">1.eclipse.core.core.core.4</div></td> </tr> <tr> <td>org.commands</td> <td><div align="center">F1.5</div></td> </tr> <tr> <td>org.

help.eclipse.core</td> <td><div align="center">1.jdt</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.help.0</div></td> </tr> <tr> <td>org.eclipse.base</td> <td><div align="center">1.help.eclipse.core.0</div></td> </tr> <tr> <td>org.eclipse.compatibility.jdt.eclipse.0</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.core.5</div></td> </tr> <tr> <td>org.compatibility.ui</td> <td><div align="center">1.</tr> <tr> <td>org.0</div></td> </tr> <tr> <td>org.registry</td> <td><div align="center">F1.help</td> <td><div align="center">F1.cvs</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.runtime.5</div></td> .0</div></td> </tr> <tr> <td>org.compatibility</td> <td><div align="center">F1.4</div></td> </tr> <tr> <td>org.runtime.eclipse.runtime.eclipse.apt.appserver</td> <td><div align="center">F1.debug.eclipse.core</td> <td><div align="center">1.core.ui</td> <td><div align="center">1.eclipse.eclipse.auth</td> <td><div align="center">F1.jdt.annotation</td> <td><div align="center">1.eclipse.5</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.variables</td> <td><div align="center">1.eclipse.webapp</td> <td><div align="center">1.eclipse.eclipse.eclipse.core.debug.help.

junit.eclipse.debug.eclipse.5</div></td> </tr> <tr> <td>org.doc.ui</td> <td><div align="center">1.6</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.eclipse.jdt.eclipse.user</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.ui</td> <td><div align="center">1.4</div></td> </tr> <tr> <td>org.jdt.5</div></td> .</tr> <tr> <td>org.runtime</td> <td><div align="center">1.junit4.5</div></td> </tr> <tr> <td>org.eclipse.pluggable.jdt.eclipse.jdt.doc.eclipse.eclipse.isv</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.3</div></td> </tr> <tr> <td>org.5</div></td> </tr> <tr> <td>org.launching</td> <td><div align="center">1.eclipse.core.manipulation</td> <td><div align="center">1.5</div></td> </tr> <tr> <td>org.tool</td> <td><div align="center">1.eclipse.compiler.jdt.jdt.jdt.jdt.core</td> <td><div align="center">1.junit.runtime</td> <td><div align="center">1.junit</td> <td><div align="center">1.apt.core</td> <td><div align="center">1.apt</td> <td><div align="center">1.core</td> <td><div align="center">1.jdt.jdt.compiler.6</div></td> </tr> <tr> <td>org.eclipse.debug</td> <td><div align="center">1.5</div></td> </tr> <tr> <td>org.jdt.eclipse.jdt.jdt.jdt.eclipse.jdt.eclipse.4</div></td> </tr> <tr> <td>org.eclipse.6</div></td> </tr> <tr> <td>org.apt.

build</td> <td><div align="center">1.doc.api.refactoring</td> <td><div align="center">1.ui</td> <td><div align="center">1.tools.pde.eclipse.pde.eclipse.tools</td> <td><div align="center">1.jface</td> <td><div align="center">F1.core</td> <td><div align="center">1.eclipse.4</div></td> </tr> <tr> <td>org.pde.eclipse.1</div></td> </tr> <tr> <td>org.eclipse.ui</td> <td><div align="center">1.ui.ds.pde.ltk.ui</td> <td><div align="center">1.core</td> <td><div align="center">1.4</div></td> </tr> <tr> <td>org.eclipse.core</td> <td><div align="center">1.eclipse.4</div></td> .eclipse.eclipse.api.refactoring</td> <td><div align="center">1.eclipse.eclipse.pde.4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.text</td> <td><div align="center">1.eclipse.4</div></td> </tr> <tr> <td>org.5</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.eclipse.jsch.4</div></td> </tr> <tr> <td>org.eclipse.jface.pde</td> <td><div align="center">1.4</div></td> </tr> <tr> <td>org.jdt.4</div></td> </tr> <tr> <td>org.user</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.core.0</div></td> </tr> <tr> <td>org.eclipse.pde.jsch.jface.ltk.databinding</td> <td><div align="center">F1.</tr> <tr> <td>org.

eclipse.eclipse.ds.eclipse.eclipse.junit.pde.isv</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.doc.ui</td> <td><div align="center">1.eclipse.ui</td> <td><div align="center">1.sdk</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.eclipse.4</div></td> </tr> <tr> <td>org.search</td> <td><div align="center">1.doc.platform.0</div></td> </tr> <tr> <td>org.user</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.pde.pde.eclipse.ua.platform</td> <td><div align="center">F1.ui.launching</td> <td><div align="center">1.eclipse.4</div></td> </tr> <tr> <td>org.templates</td> <td><div align="center">1.platform.pde.pde.4</div></td> </tr> <tr> <td>org.eclipse.pde.eclipse.4</div></td> </tr> <tr> <td>org.eclipse.rcp</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.runtime</td> <td><div align="center">1.core</td> <td><div align="center">1.pde.runtime</td> <td><div align="center">1.4</div></td> </tr> <tr> <td>org.ui</td> <td><div align="center">1.pde.4</div></td> </tr> <tr> <td>org.eclipse.swt</td> <td><div align="center">F1.eclipse.</tr> <tr> <td>org.eclipse.ua.eclipse.4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.0</div></td> .

5</div></td> </tr> <tr> <td>org.eclipse.ui.eclipse.ui.team.core</td> <td><div align="center">1.ui.eclipse.4</div></td> </tr> <tr> <td>org.4</div></td> .eclipse.cvs.ide</td> <td><div align="center">1.team.eclipse.4</div></td> </tr> <tr> <td>org.team.ide.ui</td> <td><div align="center">1.cvs.cheatsheets</td> <td><div align="center">1.4</div></td> </tr> <tr> <td>org.team.4</div></td> </tr> <tr> <td>org.forms</td> <td><div align="center">1.ui.ui</td> <td><div align="center">F1.</tr> <tr> <td>org.application</td> <td><div align="center">1.eclipse.4</div></td> </tr> <tr> <td>org.externaltools</td> <td><div align="center">1.4</div></td> </tr> <tr> <td>org.ui.4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.eclipse.eclipse.ui.eclipse.cvs.eclipse.eclipse.eclipse.eclipse.4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.console</td> <td><div align="center">1.eclipse.text</td> <td><div align="center">1.team.ui.eclipse.4</div></td> </tr> <tr> <td>org.ssh2</td> <td><div align="center">1.0</div></td> </tr> <tr> <td>org.ui.editors</td> <td><div align="center">1.core</td> <td><div align="center">1.4</div></td> </tr> <tr> <td>org.browser</td> <td><div align="center">1.ui</td> <td><div align="center">1.

tabbed</td> <td><div align="center">F1.workbench.4</div></td> </tr> <tr> <td>org.eclipse.compatibility</td> <td><div align="center">1.eclipse.eclipse.ui.4</div></td> </tr> <tr> <td>org.eclipse.views</td> <td><div align="center">1.1</div></td> </tr> <tr> <td>org.intro</td> <td><div align="center">1.</tr> <tr> <td>org.eclipse.r21</td> <td><div align="center">1.ui.4</div></td> </tr> <tr> <td>org.eclipse.texteditor</td> <td><div align="center">1.ui.0</div></td> .ui.4</div></td> </tr> <tr> <td>org.eclipse.eclipse.ui.log</td> <td><div align="center">1.4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.4</div></td> </tr> <tr> <td>org.views.net</td> <td><div align="center">F1.workbench.navigator</td> <td><div align="center">1.win32</td> <td><div align="center">1.5</div></td> </tr> <tr> <td>org.intro.ui.update.navigator.ui.properties.eclipse.ui.1</div></td> </tr> <tr> <td>org.workbench</td> <td><div align="center">F1.4</div></td> </tr> <tr> <td>org.eclipse.4</div></td> </tr> <tr> <td>org.eclipse.ui.ui.ui.ui.resources</td> <td><div align="center">1.eclipse.configurator</td> <td><div align="center">F1.ui.4</div></td> </tr> <tr> <td>org.0</div></td> </tr> <tr> <td>org.eclipse.views.presentations.eclipse.universal</td> <td><div align="center">1.eclipse.trace</td> <td><div align="center">1.ui.

5</div></td> </tr> <tr> <td>org.scheduler</td> <td><div align="center">F1.hamcrest.slf4j.asm</td> <td><div align="center">1.junit4</td> <td><div align="center">1.3</div></td> </tr> <tr> <td>org.0</div></td> </tr> <tr> <td>org.api</td> <td><div align="center">F1.update.core</td> <td><div align="center">1.1</div></td> </tr> </tbody> </table> </body> </html> .win32</td> <td><div align="center">not specified</div></td> </tr> <tr> <td>org.update.5</div></td> </tr> <tr> <td>org.eclipse.core</td> <td><div align="center">F1.eclipse.eclipse.1</div></td> </tr> <tr> <td>org.eclipse.junit</td> <td><div align="center">1.objectweb.update.0</div></td> </tr> <tr> <td>org.3</div></td> </tr> <tr> <td>org.update.ui</td> <td><div align="center">F1.core.</tr> <tr> <td>org.