https://bugs.documentfoundation.org/show_bug.cgi?id=169296
Bug ID: 169296
Summary: Replace beanshell scripting with JShell
Product: LibreOffice
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: enhancement
Priority: medium
Component: LibreOffice
Assignee: [email protected]
Reporter: [email protected]
Description:
Beanshell has been the de facto library to provide interactive Java shell for
many years. But, since Java 9 in 2017, JShell is the standard Java REPL
(read–eval–print loop) which is available in JDK:
JEP 222: jshell: The Java Shell (Read-Eval-Print Loop)
https://openjdk.org/jeps/222
Suggested Enhancement:
The suggestion here is to replace the beanshell inside LibreOffice with JShell.
Rationale:
Although BeanShell is still available, it is no longer actively developed.
Latest commit goes back to August 2024, which is more than a year ago:
https://github.com/beanshell/beanshell/commits/master
and the last release is from Dec 2022, which is around 3 years ago.
https://github.com/beanshell/beanshell/releases
Also, it can be read in JEP 222 (link above) that BeanShell is not entirely
compatible with the latest Java features, and that is the case since Java 1.4
(2002-2003):
"Another alternative is to maintain the status quo: Use another language or use
a third-party REPL such as BeanShell, though that particular REPL has been
dormant for many years, is based on JDK 1.3, and makes arbitrary changes to the
language."
Additional information:
More information can be found in JDK Javadoc for the jdk.jshell module:
Module jdk.jshell
https://docs.oracle.com/en/java/javase/25/docs/api/jdk.jshell/module-summary.html
Introduction to JShell
https://docs.oracle.com/en/java/javase/11/jshell/introduction-jshell.html#GUID-465BA4F5-E77D-456F-BCB7-D826AC1E18AE
10 things developers need to know about JShell
https://developers.redhat.com/blog/2019/04/05/10-things-developers-need-to-know-about-jshell
Notes:
JShell uses a separate Java VM instance.
https://stackoverflow.com/q/44929943
--
You are receiving this mail because:
You are the assignee for the bug.