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.

  1. O mesmo arquivo jar funcionará para o Debian Linux?

  2. 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?

Foi útil?

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
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top