Jar Arquivo de Java
-
18-09-2019 - |
Pergunta
Eu criei um aplicativo Java e o empacionei em um arquivo JAR em uma plataforma Windows. Agora eu quero implantar esse arquivo JAR no Debian Linux.
O mesmo arquivo jar funcionará para o Debian Linux?
O comando, usado no Windows para executar um arquivo JAR no prompt de comando, o mesmo para o DeBain Linux?
ou seja
java -jvm "MyJar.jar"
O comando acima funcionará para o Debian Linux?
Solução
Sim.
Os arquivos JAR são portáteis entre as plataformas e a sintaxe do comando JAR é a mesma no Linux e no Windows.
Editar: você deve usar a versão mais recente do Sun Java, a menos que haja um muito Boa razão para não. Instruções de instalação: http://wiki.debian.org/java/sun
Outras dicas
Geralmente, deveria. No entanto, isso depende de algumas condições:
- Se você usar o código nativo (JNI), deve garantir que a biblioteca nativa esteja disponível para a plataforma de destino
- Você deve ter certeza de que não tem caminhos codificados, que são específicos do Windows (na verdade, você deve se atender a personagens especiais como o caminho Seperator: vs.;)
- Você não pode usar código específico do tempo de execução
1. O mesmo arquivo JAR funcionará para o Debian Linux?
Sim. Daí a natureza do Java (código portátil)
2. O comando, usado no Windows para executar um arquivo JAR no prompt de comando, o mesmo para o DeBain Linux?
java -jar "myjar.jar"
Sim, a principal idéia do Java é que ele (deveria) executar em diferentes sistemas operacionais, desde que um tempo de execução do Java seja instalado.
Embora eu nunca tenha ouvido falar da bandeira -jvm.
Se você deseja iniciar um arquivo JAR, use o sinalizador -jar.
java -jar "MyJar.jar"
Você também pode ler no Escreva uma vez, corra em qualquer lugar princípio.
Faço meu desenvolvimento em um Mac, mas executo em ambientes Linux e Windows sem nenhum problema. Key não é usar o JNI, como todos os outros mencionaram que eu usaria java -jar "MyJar.jar"
Quase. Usar:
java -jar "myjar.jar"
E é claro que você não deveria ter usado nada tais JNI ou coisas de tempo de execução
Sim, embora você queira fazer, no Linux:
java -jar YourJar.jar
Ao invés de:
java -jvm YourJar.jar