IntelliJ IDEA: Executando um script de shell como uma configuração de execução / depuração

115

Existe uma maneira pela qual um script de shell pode ser chamado a partir das configurações de execução / depuração do IntelliJ?

Sundar Annamalai
fonte
5
Se você deseja ver esse recurso no PyCharm, vote em IDEA-112256 'Linha de comando' Executar solicitação de recurso de configuração .
Piotr Dobrogost de

Respostas:

78

Acabei de descobrir que podemos invocar um script de shell com a ajuda do plugin BashSupport .

Sundar Annamalai
fonte
3
Alguma ideia de como depurar isso?
valdeci de
64

'Adicionar ferramenta externa' em 'Antes do lançamento' resolve o problema.

Captura de tela

ferramenta de edição adicionar script de shell

Siddhartha
fonte
3
Funcionou bem - obrigado. Eu usei o Programa: `C: \ Arquivos de programas (x86) \ Git \ bin \ rm.exe` E Parâmetros: `-fr ~ / .grails / .slcache /` Como outro exemplo
Ask613
3
Isso ainda não executa uma das configurações padrão de execução / depuração após a execução deste script externo? E se você quisesse apenas executar seu próprio script externo?
Greg Bell
2
Para encontrar o caminho para shou bash, insira which shou which bashem um shell. Você pode usar $ProjectFileDir$como o diretório de trabalho , que é uma macro apontando para o diretório raiz do projeto. Outras macros (por exemplo, para diretórios específicos do módulo) podem ser encontradas no botão Inserir macro ....
Erik,
2
e se eu precisar após o lançamento?
Xerus
11

Atualização do IntelliJ IDEA 2019.2

A nova versão do IntelliJ IDEA inclui o Suporte a Shell Script . Isso significa que agora você pode criar um build de Shell Script para o seu projeto.

Edit Configurations > (+) Add New Configuration > Shell Script

Você também pode construir seu projeto antes de executar seu script, adicionando a tarefa Executar outra configuração . É assim que se parece: janela Adicionar Shell Build

Kyriet
fonte
1
Infelizmente, se uma configuração de depuração java usa um script de shell em "Executar outra configuração", apenas o script de shell é iniciado. A sessão de depuração não é.
Auric
1
@Auric, há um problema para isso: youtrack.jetbrains.com/issue/IDEA-229741
Andrey
10

Não tenho certeza sobre 11, mas em 12 há uma parte de Run / Debug Configuration que é chamada "Before Launch" e você pode selecionar seu script de shell na opção "Add External tool".

Vic
fonte
1
Obrigado. Eu costumava executar um script de shell para concatenar arquivos JS antes de iniciar meu aplicativo Android.
Ben Clayton