czerny
czerny

Reputation: 16644

How to shutdown jshell at the end of the script?

How to instruct jshell to terminate at the end of the script similarly to interpreters of other languages like for example python3 or node?

Following command

./jshell -q /tmp/shell.java

with script /tmp/shell.java

System.out.println("Hello world");

prints

Hello world
jshell> 

and waits for further commands. I'd like it to stop immediately at the end of the file.

I'm looking for something more elegant than System.exit(0); at the end of the script.

Upvotes: 36

Views: 9875

Answers (3)

Mike Twc
Mike Twc

Reputation: 2355

Another option:

cat /tmp/shell.java | jshell -

Should work the same in bash and windows powershell

Upvotes: 0

Olivier Grégoire
Olivier Grégoire

Reputation: 35427

Another possibility is to have an exit file:

exit.jsh

/exit

And then run:

./jshell --startup myscript.jsh --startup exit.jsh

Upvotes: 8

Jason
Jason

Reputation: 7636

Inside the script, use the jshell command /exit. This will exit jshell at the end of your script.

Check this reference https://docs.oracle.com/javase/9/jshell/introduction-jshell.htm#JSHEL-GUID-465BA4F5-E77D-456F-BCB7-D826AC1E18AE

Upvotes: 73

Related Questions