Eu sei que para executar um arquivo, eu utilizo o comando .
, depois o nome do arquivo com um espaço entre eles. Mas I'estou tentando executar um arquivo .jar utilizando o comando .
e ele não funciona. Entrei nas propriedades e o marquei como executável e o fiz rodar com Java.
Existe uma forma de executar um ficheiro com Java no terminal Bash?
Estou a tentar executar o ficheiro Minecraft.jar.
A sintaxe .
só pode ser utilizada para executar (por "sourcing") shell scripts.
Você'precisará utilizar o comando java
para executar um arquivo .jar
:
java -jar Minecraft.jar
Se você não'não tem o java instalado, você pode corrigir isso instalando o pacote default-jre
¹. Você pode ver se você já tem o java instalado, rodando em um terminal:
java -version
[1]: Isto instalará o tempo de execução padrão do openjdk Java. Você pode utilizar openjdk-8-jre
, ou openjdk-7-jre
, ou openjdk-6-jre
, se preferir - o que estiver disponível na sua versão do Ubuntu.
O Linux é perfeitamente capaz de executar um binário estrangeiro, como um arquivo JAR. É assim que o Wine funciona, por exemplo. Para rodar arquivos JAR como executáveis, faça o seguinte em um console
sudo apt-get install binfmt-support
Cd para o seu arquivo JAR e alterá-lo para executável (você também pode fazer isso através das propriedades do arquivo no Nautilus)
chmod a+rx myjar.jar
Execute seu arquivo jarro como se fosse qualquer outro executável binário ou script shell
./myjar.jar
Nota: Certifique-se de que tem binfmt_misc módulo do kernel do linux carregado. Se você usar seu kernel compilado personalizado sem este módulo, o binfmt-support won't funciona.
Se for um frasco executável, então
java -jar Minecraft.jar
Nem todos os frascos-Arquivos contêm uma classe executável, declarada para ser iniciada no arquivo Manifesto, mas se houver, isto funcionará.
Btw..: Você não' não inicia a maioria dos programas a partir da shell com o ponto. O ponto é um atalho para source
, e só funciona na bash e em alguns outros shells, para incluir um script no escopo da sessão atual.
Um xybin binário compilado é simplesmente iniciado com seu nome se ele estiver no caminho:
xybin
ou, com o seu caminho absoluto:
/home/foo/proj/test/xybin
ou com o seu caminho relativo:
proj/test/xybin
ou se você estiver no diretório do arquivo, com este caminho relativo:
./xybin
O ficheiro tem de ser marcado como executável para si (ver: chmod). Tudo o que foi dito acima também é verdade para shellscripts, mas eles frequentemente têm uma extensão .sh, e você pode iniciar um shellscript invocando o interpretador, e então ele precisa de't ser marcado como executável:
bash xy.sh
Se você não'não quer começar uma nova bash, você pode usar a fonte, e você o faz, para consumir definições de funções, pseudônimos e configurações de variáveis.