No artigo anterior paramos no comando /reset, que limpa tudo que já digitamos no console. Depois fizemos o comando /list para ver se realmente não tinha limpado tudo.
Por isso é bom guardar os comandos em arquivos. Vamos abrir novamente o arquivo HeloWorld.java com o comando: /open HeloWorld.java.

Se você digitar o /list verá cada linha de código desse arquivo. Temos a opção de editar apenas uma linha deste código colocando a marcação /edit.
Vamos editar a linha um digite: /edit 1
Vai abrir o editor do JShell para podermos editar a linha que digitamos.

Vamos modificar o comando System.out.println para printf.
printf(“Hello World!”);
Clique em Accept e depois em Exit. Se você estiver utilizado o Java 9 você irá ver no console do jshell a execução da linha editada, no caso a saída será o Hello World!.
No meu caso estou utilizando o Java 13 e pesquisando vi que o método printf foi removido, então para mim irá aparecer um erro quando eu clicar em Accept.
Quando você clica em Accept a linha editada é executada e você pode ver o resultado no console do jshell.

O jshell já carrega algumas bibliotecas assim que inicia, por isso há comandos que você não precisará importar nenhuma biblioteca.
Para ver as bibliotecas carregadas automaticamente execute o comando: list -start.

Veja esse mesmo comando para a versão do Java 9. Note que o printf estava presente.

Se você quiser listar todos os comandos que você já executou mais as importações faça o comando: /list -all

As linhas que são pré-carregas são numeradas com o prefixo s. A linhas que tem o prefixo e, foram comandos que apresentaram algum tipo de erro.
Se você quiser executar um comando desta lista basta executar o comando /n onde n é o identificador na lista.

Você pode também executar o comando por exemplo, contando a posição do último item da lista como referência.
Digamos que eu queira executar o e6. Ao invés de eu executar o comando /e6 posso executar o comando /-2.
Para listar todas as variáveis que você criou, você pode executar o comando /vars.

Se você quiser listar todas as classes criadas, você pode executar o comando /types. Note que eu criei uma classe antes de listar as classes.

Para listar todos os métodos criados, execute o comando /methods.

Se você quiser ver todos os comandos digitados no console digite o comando: /history.
Vimos que para limpar todos os comandos executados no console digitamos /reset. Mas há a opção de remover apenas uma linha desejada com o comando /drop n, onde n é o identificador da linha.

Você pode configurar um editor para abrir com o seguinte comando: /set editor “caminho do arquivo”. E depois para abrir este editor você digita: /edit.

Digite o seguinte comando:
void println(String message){System.out.println(message);}
Agora salve este comando em um arquivo: /save sample.startup
Digite o comando: /set start sample.startup. Depois digite o comando /reset.
Se você digitar o comando /list -all, você verá que não há mais aquelas importações das bibliotecas. E por quê?
Quando criamos o arquivo sample.startup e depois executamos o comando set start, e em seguida executamos o comando /reset.
Depois do reset o jshell não vai mais carregar os arquivos padrões que carregava antes, porque dizemos ao sistema para carregar no lugar o arquivo sample.startup.
Com isto você percebe que tem a possibilidade de configurar do seu jeito o que o jshell vai carregar logo que iniciar.
Deixe um comentário