Cos’è BeanShell?

BeanShell è un interprete Java gratuito inventato da Pat Niemeyer. Funziona su Java Runtime Environment (JRE) e utilizza la sintassi Java standard, nonché i tipi loose, i comandi e le chiusure methox. BeanShell aggiunge funzionalità simili a script al linguaggio Java. Come Javascript, è un linguaggio di scripting basato su oggetti. È stata accettata come richiesta di specifica Java (JSR), che è il primo passo per una piena integrazione nel linguaggio di programmazione Java.

Come interprete Java, BeanShell può essere utilizzato per interpretare la normale sintassi Java, ma può anche interpretare la propria sintassi, che può essere utilizzata per ridimensionare Java da un linguaggio di programmazione statico a uno dinamico. BeanShell è stato chiamato ufficiosamente Little Java dai programmatori perché assomiglia molto alla sintassi del linguaggio di programmazione Java sotto molti aspetti. Tuttavia, aggiunge il supporto di molte nuove funzionalità, come le variabili digitate in modo approssimativo, in cui la variabile non deve essere dichiarata prima. BeanShell supporta anche oggetti con script come semplici chiusure di metodi e gestori di eventi Abstract Windows Toolkit/Swing.

BeanShell ha un sito Web da cui può essere scaricato. Il sito Web può essere individuato digitando “BeanShell” in qualsiasi motore di ricerca Internet. Su questo sito Web, gli utenti troveranno molte opzioni e potranno scaricare il pacchetto BSH, che include l’interprete principale, i comandi della shell e le utilità.

Gli utenti la cui versione di Java non include Swing devono aggiungere il file swingall Java Archive (JAR) al classpath. Alcune delle utilità utilizzano Swing. Dopo che Swing è stato impostato nel classpath, BeanShell funzionerà in un interprete interattivo della console o in un interprete interattivo grafico.

BeanShell è un progetto open source. È piccolo e incorporabile. BeanShell è stato integrato in molte applicazioni, inclusi test, configurazione, sistemi incorporati, motori di regole, estensioni di script utente, prototipazione rapida, distribuzione dinamica e persino istruzione Java.