JDK-7172940 : deployment toolkit changes to detect FX runtime from co-bundle
Type:Bug
Component:deploy
Sub-Component:deployment_toolkit
Affected Version:7u6
Priority:P2
Status:Closed
Resolution:Fixed
OS:generic
CPU:generic
Submitted:2012-05-30
Updated:2013-10-31
Resolved:2012-06-13
The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.
need to update deployment toolkit script and plugin to be aware of fx runtime from jre/fx co-bundle
Comments
EVALUATION
Introduced 2 new properties on JVM objects in the dtplugin.jvms list:
a) home
Location where JRE is installed
b) javafxVersion
version of embedded javafx. undefined if it is not a cobundle
Also changed getInstalledJavaFX implementation to return version of javafx cobundled into latest JRE (only if standalone installation is not available). This is to simplify migration for older copies of dtjava.js
==== Sample test output on my system (same for IE/Chrome/FF) - 7u6 cobundle + 6u31, no standalone JavaFX, DT from JRE 8 =======
p.getJavaFXEnabled=1
p.jvms[0]= 1.6.0_31, home=C:\Program Files\Java\jre6, running=false, default=false, fx=undefined
p.jvms[1]= 1.7.0_06, home=C:\Program Files\Java\jre7, running=false, default=true, fx=2.2.0
p.getInstalledFXVersion(2.0+)= 2.2.0
p.getInstalledFXVersion(2.2+)= 2.2.0
p.getInstalledFXVersion(2.4+)=
p.browserJVM.version= 1.7.0_06
p.runningJVM= null
p.deployVersion= 10.6.2
p.version= 11.0.0
===========
This change also include significant amount of refactoring related changes, including:
- removing some old code (like detecting mozilla.exe)
- use of _bstr_t instead of buffers of unspecified length
- helper JREDescription object
There are further opportunities to improve code and increase code share between IE/NPAPI branches but i left it to the future work.