-
Bug
-
Resolution: Fixed
-
P3
-
None
-
None
-
b31
-
generic
-
generic
jjs tool has java.desktop dependency because of few features. But there many other features that don't require java.desktop at all.
Features that require java.desktop are:
* browsing javadoc of a java class or package with an external browser (on shift-tab)
* load call tab-completion by file chooser dialog box
* internal swing based built-in editor for "edit()" call
The last one can be done using jdk.internal.ed dependency alone. No need for java.desktop for that. The first two can be rewritten in script to avoid direct/static java dependency.
All other features like multi-line editing, command line persistent history, history navigation, tab-completion of expressions, inline JS function documentation (on shift-tab) , editing script by external editor like vi/notepad etc. don't need java.desktop at all. So jjs should just dynamically detect and use java.desktop features when available - otherwise should just disable the above features.
Features that require java.desktop are:
* browsing javadoc of a java class or package with an external browser (on shift-tab)
* load call tab-completion by file chooser dialog box
* internal swing based built-in editor for "edit()" call
The last one can be done using jdk.internal.ed dependency alone. No need for java.desktop for that. The first two can be rewritten in script to avoid direct/static java dependency.
All other features like multi-line editing, command line persistent history, history navigation, tab-completion of expressions, inline JS function documentation (on shift-tab) , editing script by external editor like vi/notepad etc. don't need java.desktop at all. So jjs should just dynamically detect and use java.desktop features when available - otherwise should just disable the above features.