[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[jdt-debug-dev] API contract change in IVMInstall
|
This note is important for clients that implement
org.eclipse.jdt.launching.IVMInstall.
For the 3.1 release we orginally intended to add 3 new API methods to
IVMInstall, to address bugs 73493 and 81870. This required clients to not
implement IVMInstall directly, but rather subclass AbstractVMInstall. Late
in the release we discovered that some clients do implement IVMInstall
directly without subclassing AbstractVMInstall, and thus, our new 3.1
contract breaks binary compatibility with some 3.0 based plug-ins (see bug
98160). To avoid this breaking change, we will instead add the new methods
to an optional interface, IVMInstall2.
It is still recommended that clients subclass AbstractVMInstall rather
than implement IVMInstall and IVMInstall2 directly. However, clients that
do not subclass AbstractVMInstall will be binary compatible with the 3.1
release.
Clients that have alrady migrated to the new suggested contract will
continue to work. Clients that have already implemented the new methods on
IVMInstall should also declare they implement IVMInstall2. These changes
will be available in the next nightly build.
This is documented in the 3.1 migration guide.
Darin