Eclipse 3.4 Java Debug Build Notes

Summary of API changes in 3.4

Java Launch Shortcuts

The core Java launch shortcuts are available to be extended/reused.

The following classes are provided as API in the package org.eclipse.jdt.debug.ui.launchConfigurations:

The methods exposed to consumers from the parent class JavaLaunchShortcut and through the two subclasses are:

Support for Execution Environment Descriptions

An installed JRE can be defined by an execution environment description file. A new 'Execution Environment Description' VM install type shipped with the Eclipse SDK supports standard ".ee" files.

API has been added to JavaRuntime to create a VM from an execution environment description file. A name and unique identifier must be provided to create a new JRE.

A new method has been added to AbstractVMInstallType to allow default arguments to be provided for newly created VM installs. Ideally, this method would be added to IVMInstallType, but to support binary compatibility, the method has only been added to AbstractVMInstallType. 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.

Support for custom wizard pages used to edit VM installs

An new extension point (org.eclipse.jdt.debug.ui.vmInstallPages) allows a wizard page to be contributed for editing the properties of an IVMInstall. The page is used when adding or editing an installed JRE via user preference. A standard page is provided based on the IVMInstallType and IVMInstall interfaces. JDT contributes a page for editing a JRE based on an execution environment description file.

Support for setting a range of values in array objects

API has been added to IJavaArray 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 IJavaArray.

New API methods on IJavaDebugTarget

The following API methods have been added to IJavaDebugTarget.

3.4 M5 - Feb 8, 2008

Problem Reports Fixed

Bug 212439: Unable to change variable value when stopped in JSP
Bug 214650: Execution Env description file allows only one source archive
Bug 217447: JREContainer keeps getting initialized if problem with EE
Bug 217623: extension point org.eclipse.jdt.launching.classpathProviders based on ridiculous class
Bug 217736: Unhandled event loop exception

Jan 29, 2008

Problem Reports Fixed

Bug 216783: Hyperlink Debugging should only be enabled if current context is IJavaStackframe
Bug 214696: refactor WorkingDirectoryBlock

Dec 10, 3.4M4

Problem Reports Fixed

Bug 209833: Problems with compiler preferences when starting with 7.0
Bug 210368: Run configuration dialog does not show error message if on tab with error

Nov 27, 2007

Problem Reports Fixed

Bug 210759: debug tests don't compile after changes in refactoring

Nov 20, 2007

Problem Reports Fixed

Bug 209943: LaunchConfigurationQueryParticipant does not respect search scope
Bug 210126: Unable to open Snippet editor in I20071113-0800

Nov 13, 2007

Problem Reports Fixed

Bug 209978: NPE clicking stack trace in console
Bug 208410: [jre] the new JRE wizard should be consistent

3.4 M3 - Nov 2, 2007

Problem Reports Fixed

Bug 208036: Detail pane in inspect popup dialog is too small
Bug 208119: renaming main type deletes associated launch configuration
Bug 206270: project or launcher classpath dialog shows blank lines for unavailable projects
Bug 206747: CCE in LaunchConfigurationQueryParticipant when searching for references to method
Bug 207497: Instance Breakpoint Dialog from Variables View is confusing
Bug 207740: LaunchConfigurationQueryParticipant should only be active for types

Oct 23, 2007

Problem Reports Fixed

Bug 206693: JRE location looks wrong after installing j9 using ee description file

Oct 16, 2007

Problem Reports Fixed

Bug 205481: VMTypePage could be improved
Bug 206067: NullPointerException @ ASTInstructionCompiler.visit
Bug 202818: support for variables in vm definition files
Bug 57515: [search] java search participant for launch configs

Oct 9, 2007

Problem Reports Fixed

Bug 203468: Unable to add watchpoint from Variables View if selected variable is not IField
Bug 204670: Improve wording on the JRE container page
Bug 201758: Breaking change in IVMInstall.getInstallLocation()
Bug 205511: javadoc warning in N20071004-0010

Oct 2, 2007

Problem Reports Fixed

Bug 204137: Properties page for JRE System Library does not use dialog font everywhere
Bug 204455: ConnectionType not remembered in Remote Java Application Launch Config
Bug 204023: Debug tests sometimes DNF

3.4 M2 - Sept 21, 2007

Problem Reports Fixed

Bug 201440: Improve Debug Manual Test Suite
Bug 202806: Expression evaluation error when debugging.
Bug 203687: unable to launch last launched debug session

Sept 11, 2007

Problem Reports Fixed

Bug 202158: NPE in org.eclipse.jdt.internal.debug.ui.JavaHotCodeReplaceListener.hotCodeReplaceFailed
Bug 201194: org.eclipse.jdt.doc.user question about "Show Static Fields"
Bug 74709: [expressions] Watch action should work on an empty selection
Bug 54072: [java launching] Provide API to extend launch shortcuts with different modes

Sept 4, 2007

Problem Reports Fixed

Bug 200946: Support socket listening connector for Remote Java Application
Bug 201560: coding error in LibraryStandin
Bug 201264: several files not indexing correctly in help

Aug 28, 2007

Problem Reports Fixed

Bug 200728: Expansion/selection state for Java variables shared between frames
Bug 200462: Edit JRE definition: NullPointerException

Aug 21, 2007

Problem Reports Fixed

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

3.4 M1 - August 10, 2007

Problem Reports Fixed

Bug 94134: API spec reference to org.eclipse.jdt.launching.vmType extension point
Bug 125673: [evaluation] Improve error message for method invocation on manually suspended threads
Bug 198404: compilation errors in refactoring tests
Bug 177556: [messages] remove internal error messages from translations

July 31, 2007

Problem Reports Fixed

Bug 196835: variable id not shown for String variables
183800: [launching] Discard changes question dialog on run dialog does give no real choice
197011: Add JRE fails to retain system library modifications.
196940: Add Watchpoint: NPE encountered
195848: Add Java Exception Breakpoint dialog should use JavaUI#createTypeDialog(..)
188676: [breakpoints] BreakpointMarkerUpdater moves line breakpoint to wrong position
195185: Cannot debug java class
129066: [breakpoints] Breakpoint view shows multiple breakpoints with same line number
140660: Debug View Actions (such as Show System Threads) should be Java-specific

July 17, 2007

Problem Reports Fixed

42173: [jres] Bad generated name for JREs
79529: [java debug] Step Into Outermost method invocation
177556: [messages] remove internal error messages from translations
181003: Default watchpoint settings should be configurable

July 10, 2007

Problem Reports Fixed

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