If a decision to abandon BeanShell soon has already been made, then this message is irrelevant. However, if BeanShell support will continue in the short term, this is relevant.
BeanShell 2.1 is not recommended, according to posts in the BeanShell forum. They recommend to pull the latest snapshot. README.md is really old and misleading; I don't understand why they don't update it.
To see what has changed, go to
https://github.com/beanshell/beanshell/issues?q=is%3Aissue+is%3Aclosed+sort%3Aupdated-desc. Some of the completed changes are important, e.g. "Java 16 and strongly encapsulated Java internals". It seems that the major problem that prevents a new release is incomplete testing of changes that were imported from the old SourceForge repository.
I decided to try installing the latest BeanShell build. I have never used Maven, but this was an excuse to force myself to try it. It looks complicated, but it was quite easy.
I assume that you don't want to go through the process of generating the latest BeanShell, so I have attached it.
This is how I did it:
1) Install the latest version of BeanShell
(Refer to my next message for detailed instructions.)
I renamed this to bsh-2.2.2.jar and replaced this file in jalbum\lib.
2) Test jAlbum
I opened jAlbum successfully.
I opened my project and it failed:
Exception in thread "Skin onload thread" java.lang.NoClassDefFoundError: bsh/BshScriptEngine
at se.datadosen.jalbum.AlbumBean.pushVars(AlbumBean.java:6521)
at se.datadosen.jalbum.ASTEvaluator.enterScope(ASTEvaluator.java:56)
at se.datadosen.jalbum.ASTEvaluator.setScope(ASTEvaluator.java:85)
at se.datadosen.jalbum.ASTEvaluator.<init>(ASTEvaluator.java:32)
at se.datadosen.jalbum.AlbumBean.prepareMakeAlbum(AlbumBean.java:3755)
at se.datadosen.jalbum.AlbumBean.init(AlbumBean.java:3443)
at se.datadosen.jalbum.JAlbumFrame.executeScript(JAlbumFrame.java:1311)
at se.datadosen.jalbum.JMainSettingsPanel$5$1.run(JMainSettingsPanel.java:346)
Caused by: java.lang.ClassNotFoundException: bsh.BshScriptEngine
... 8 more
java.net.SocketTimeoutException: Read timed out
I opened the two jar files, and saw that BshScriptEngine.class has been moved to the "engine" subfolder. This explains the exception.
Anyway, this should be a more reliable version of BeanShell. I hope there is interest in pursuing it. If not, I have only wasted 2 hours of my life when I could have been raking leaves.