Como é possível que eu possa executar o arquivo JAR a partir do shell?

2

Eu sempre pensei, apenas executáveis no UNIX / Linux são ELF -files e shell scripts. Mas descobri que é possível usar apenas $ ./file.jar em vez de $ java -jar file.jar .

Como são JAR -files especiais? Existem outros exemplos desse comportamento? Posso criar meu próprio tipo de arquivo que pode ser executado apenas pelo seu nome / caminho?

    
por lukasrozs 16.05.2015 / 22:04

1 resposta

4

Isso ocorre porque o ubuntu suporta o módulo do kernel binfmt_misc e o tipo jar está ativado. veja /proc/sys/fs/binfmt_misc/jar

Isso é muito antigo (desde o kernel 1.03). Veja mais informações aqui: link

Outros exemplos são python e wine, sim, se você aprender como binfmt_misc funciona, você também pode criar seus próprios tipos.

    
por niry 17.05.2015 / 03:57