<!doctype html public "-//w3c//dtd html 4.0 transitional//en">

<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
   <meta name="Author" content="IBM">
   <meta name="GENERATOR" content="Mozilla/4.75 [en] (WinNT; U) [Netscape]">
   <title>Java Debug Release Notes</title>
</head>
<body>
<h1>Eclipse 3.4 Java Debug Build Notes</h1>

<h2>Summary of API changes in 3.4</h2>
<h3>Java Launch Shortcuts</h3>
<p>
	The core Java launch shortcuts are available to be extended/reused. 
</p>
<p>
	The following classes are provided as API in the package <code>org.eclipse.jdt.debug.ui.launchConfigurations</code>:
	<ul>
		<li><code>JavaAppletLaunchShortcut</code> - the standard implementation for Java applets, used in the platform</li>
		<li><code>JavaApplicationLaunchShortcut</code> - the standard implementation for Java application, used in the platform</li>
		<li><code>JavaLaunchShortcut</code> - an abstract implementation of a shortcut to launch Java artifacts, used as the parent class to the two aforementioned classes</li>
	</ul>
</p>
<p>
	The methods exposed to consumers from the parent class <code>JavaLaunchShortcut</code> and through the 
	two subclasses are:
	<ul>
		<li> <code>getConfigurationType()</code> - returns the type of configuration this shortcut creates</li>
		<li> <code>createConfiguration(IType type)</code> - creates a launch configuration for the specified <code>IType</code></li>
		<li> <code>chooseType(IType[] types, String title)</code> - allows an <code>IType</code> to be selected from the given list</li>
		<li> <code>findTypes(Object[] elements, IRunnableContext context)</code> - searches for specific <code>IType</code>s from the given list of elements</li>
		<li> <code>getTypeSelectionTitle()</code> - returns the title for the type selection dialog used by the shortcuts for user input</li>
		<li> <code>getEditorEmptyMessage()</code> - returns the error message displayed to users who try to use one of the shortcuts on an empty editor</li>
		<li> <code>getSelectionEmptyMessage()</code> - returns the error message displayed to users who try to use the shortcut on an empty selection</li>
		<li> <code>findLaunchConfiguration(IType type, ILaunchConfigurationType configType)</code> - searches for a launch configuration associated with the specified <code>IType</code> and configuration type</li>
		<li> <code>chooseConfiguration(List configList)</code> - selects a specific configuration from the specified listing</li>
		<li> <code>getShell()</code> - returns the shell used for the Java launch shortcuts</li>
	</ul>
</p>

<h3>Support for Execution Environment Descriptions</h3>
<p>An installed JRE can be defined by an <a href="http://wiki.eclipse.org/index.php/Execution_Environment_Descriptions">execution 
  environment description file</a>. The API for <code>IVMInstallType</code> and 
  <code>IVMInstall</code> have been augmented to allow for a file to be specified 
  for an install location in addition to a home directory. The 'Standard VM Install 
  Type' shipped with the Eclipse SDK supports standard &quot;.ee&quot; files.</p>
<p>This change effects the following methods in <code>IVMInstallType</code>, which 
  now accept the location of a description file as well as a home directory.</p>
<ul>
  <li><code>public IStatus validateInstallLocation(File installLocation)</code></li>
  <li><code>public LibraryLocation[] getDefaultLibraryLocations(File installLocation)</code></li>
</ul>
<p>This change effects the following methods in <code>IVMInstall</code>, which 
  can now accept/return a file as well as home directory.</p>
<ul>
  <li><code>public File getInstallLocation()</code></li>
  <li><code>public void setInstallLocation(File installLocation)</code></li>
</ul>
<p>A new method has been added to <code>AbstractVMInstallType</code> to allow 
  default arguments to be provided for newly created VM installs. Ideally, this 
  method would be added to <code>IVMInstallType</code>, but to support binary 
  compatibility, the method has only been added to <code>AbstractVMInstallType</code>. 
  Existing subclasses may override as required. The method is consulted to initialize 
  VM arguments when a new Installed JRE is created by the user. This new method 
  accepts a home directory or definition file as an argument.</p>
<ul>
  <li><code>public String getDefaultVMArguments(File installLocation)</code></li>
</ul>
<p>As well, the specification of the following method in <code>AbstractVMInstallType</code> 
  has been changed to allow a file to be supplied as an argument.</p>
<ul>
  <li><code>public URL getDefaultJavadocLocation(File installLocation)</code></li>
</ul>
<h3>Support for setting a range of values in array objects</h3>
<p>API has been added to <code>IJavaArray</code> to support setting ranges of 
  values in the arrays. It is more efficient to set a range of values at once 
  than setting each value in an array individually as it uses fewer communications 
  with the virtual machine being debugger. The following methods have been added 
  to <code>IJavaArray</code>.</p>
<ul>
  <li><code>public void setValues(IJavaValue[] values)</code></li>
  <li><code>public void setValues(int offset, int length, IJavaValue[] values, 
    int startOffset)</code></li>
</ul>
<h3>New API methods on IJavaDebugTarget</h3>
<p>The following API methods have been added to IJavaDebugTarget.</p>
<ul>
  <li><code>public boolean supportsSelectiveGarbageCollection()</code></li>
  <li><code>public String getVMName()</code></li>
  <li><code>public String getVersion()</code></li>
</ul>

<h2>3.4 M2 - Sept 21, 2007</h2>
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=201440">Bug 201440</a>: Improve Debug Manual Test Suite<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=202806">Bug 202806</a>: Expression evaluation error when debugging.<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=203687">Bug 203687</a>: unable to launch last launched debug session<br>

<h2>Sept 11, 2007</h2>
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=202158">Bug 202158</a>: NPE in org.eclipse.jdt.internal.debug.ui.JavaHotCodeReplaceListener.hotCodeReplaceFailed<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=201194">Bug 201194</a>: org.eclipse.jdt.doc.user question about &quot;Show Static Fields&quot;<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=74709">Bug 74709</a>: [expressions] Watch action should work on an empty selection<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=54072">Bug 54072</a>: [java launching] Provide API to extend launch shortcuts with different modes<br>

<h2>Sept 4, 2007</h2>
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=200946">Bug 200946</a>: Support socket listening connector for Remote Java Application<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=201560">Bug 201560</a>: coding error in LibraryStandin<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=201264">Bug 201264</a>: several files not indexing correctly in help<br>

<h2>Aug 28, 2007</h2>
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=200728">Bug 200728</a>: Expansion/selection state for Java variables shared between frames<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=200462">Bug 200462</a>: Edit JRE definition: NullPointerException<br>

<h2>Aug 21, 2007</h2>
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=197282">Bug 197282</a>: org.eclipse.jdt.debug.test.stepping.ForceReturnTests depend on VM-specific behaviour.<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=198864">Bug 198864</a>: Can't remove a breakpoint within inner class<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=177193">Bug 177193</a>: Setting range of values in array objects in one request<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=199163">Bug 199163</a>: Installed JRE Copy button should be named Duplicate<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=200049">Bug 200049</a>: "NLS missing message" in "Installed JREs" preference page<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=181026">Bug 181026</a>: support for adding JREs from definition files<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=199942">Bug 199942</a>: EE definition file test failures<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=200198">Bug 200198</a>: Unable to set method breakpoint on method with type variable<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=198737">Bug 198737</a>: API for vm name and version<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=197866">Bug 197866</a>: Installed JRE Wizard creates duplicate system libraries when drive letter is lower case<br>

<h2>3.4 M1 - August 10, 2007</h2>
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=94134">Bug 94134</a>: API spec reference to org.eclipse.jdt.launching.vmType extension point<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=125673">Bug 125673</a>: [evaluation] Improve error message for method invocation on manually suspended threads<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=198404">Bug 198404</a>: compilation errors in refactoring tests<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=177556">Bug 177556</a>: [messages] remove internal error messages from translations<br>

<h2>July 31, 2007</h2>
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=196835">Bug 196835</a>: variable id not shown for String variables<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=183800">183800</a>: [launching] Discard changes question dialog on run dialog does give no real choice<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=197011">197011</a>: Add JRE fails to retain system library modifications.<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=196940">196940</a>: Add Watchpoint: NPE encountered<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=195848">195848</a>: Add Java Exception Breakpoint dialog should use JavaUI#createTypeDialog(..)<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=188676">188676</a>: [breakpoints] BreakpointMarkerUpdater moves line breakpoint to wrong position<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=195185">195185</a>: Cannot debug java class<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=129066">129066</a>: [breakpoints] Breakpoint view shows multiple breakpoints with same line number<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=140660">140660</a>: Debug View Actions (such as Show System Threads) should be Java-specific<br>

<h2>July 17, 2007</h2>
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=42173">42173</a>: [jres] Bad generated name for JREs<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=79529">79529</a>: [java debug] Step Into Outermost method invocation<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=177556">177556</a>: [messages] remove internal error messages from translations<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=181003">181003</a>: Default watchpoint settings should be configurable<br>

<h2>July 10, 2007</h2>
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=64663">64663</a>: [variables] &quot;Variables&gt;Change Value&quot; should accept hex value<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=33452">33452</a>: [evaluation] [README] ObjectCollectedException evaluating conditional breakpoint<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=132764">132764</a>: [jres] VM type element with unknown id message in the log using I0321-1210<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=193488">193488</a>: org.eclipse.jdt.debug.test.stepping.StepIntoSelectionTests depend on VM behavior<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=85780">85780</a>: SWT support &quot;hidden&quot; widgets<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=191559">191559</a>: TVT33:TCT623: pl: Instance Breakpoint Filter Selection window<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=29855">29855</a>: [jres] Ampersands in file name create mnemonics when scanning for JREs<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=33714">33714</a>: [evaluation] AstEvaluationEngine cache<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=191486">191486</a>: [breakpoints] Alt+Enter for java breakpoint properties command is throws exceptions<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=28304">28304</a>: [variables] UnsupportedOperationException report to user on toString on WTK<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=190875">190875</a>: help id associated with wrong widget on two pref pages<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=191389">191389</a>: TVT33:TCT636: ja: No mnemonic for &quot;Step through filters&quot;<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=191486">191486</a>: [breakpoints] Alt+Enter for java breakpoint properties command is throws exceptions<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=193783">193783</a>: JDT Launching duplicates method newDocument from DebugPlugin<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=193835">193835</a>: Should not attempt to select filtered stack frame<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=46991">46991</a>: Failing debug test<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=191387">191387</a>: TVT33:TCT626: pl: functional: Up button does not work correctly<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=173890">173890</a>: [launching] can't debug premain<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=188555">188555</a>: Go to source action is disabled for exception breakpoints added from console<br>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=190492">190492</a>: JRE preference page does not scale correctly<br>

<p>&nbsp;</p>
</body>
</html>