Pregunta

Creé una aplicación Java y la empaqueté en un archivo jar en una plataforma Windows.Ahora quiero implementar ese archivo jar en Debian Linux.

  1. ¿Funcionará el mismo archivo jar para Debian Linux?

  2. ¿El comando utilizado en Windows para ejecutar un archivo jar desde el símbolo del sistema es el mismo para Debain Linux?

es decir.

java -jvm "MyJar.jar"

¿Funcionará el comando anterior para Debian Linux?

¿Fue útil?

Solución

Sí.

archivos Jar son portátiles entre plataformas, y la sintaxis del comando jar es el mismo tanto en Linux y Windows.


EDIT: Se debe utilizar la última versión de Sun Java a menos que haya un muy buena razón para no hacerlo. Instrucciones de instalación: http://wiki.debian.org/Java/Sun

Otros consejos

En general, lo que debería. Sin embargo, esto depende de algunas condiciones:

  • Si utiliza código nativo (JNI) debe asegurarse de que la biblioteca nativa está disponible para la plataforma de destino
  • Debe asegurarse de que tiene no hay caminos codificados que son específicos de Windows (de hecho, incluso se debe mirar hacia fuera para caracteres especiales como el separador de ruta: vs.;)
  • No se puede utilizar en tiempo de ejecución de código específica

1. Será el mismo trabajo archivo jar para Debian Linux?

  
    

Sí. Por lo tanto la naturaleza de Java (código portable)

  

2. Es el comando, que se utiliza en las ventanas para ejecutar un archivo jar desde el símbolo del sistema, lo mismo para Debain Linux?

  
    

java-jar "MyJar.jar"

  

Sí, la idea principal de Java es que (debe) se ejecutan en diferentes sistemas operativos, siempre y cuando se instala un tiempo de ejecución de Java.

aunque nunca he oído hablar de la bandera -jvm.

Si desea iniciar un archivo jar que debe usar la bandera-jar.

java -jar "MyJar.jar"

También puede leer sobre el Escribir una vez ejecutar en cualquier lugar principio.

hago mi desarrollo en un Mac, pero se ejecutan en entornos Linux y Windows sin ningún problema. Clave es no usar JNI, Como todos los demás han mencionado que yo usaría java -jar "MyJar.jar"

Casi.Usar:

java -jar "MiJar.jar"

Y, por supuesto, no deberías haber usado nada como JNI o ​​material de tiempo de ejecución.

Sí, aunque es posible que desee hacer, en Linux:

java -jar YourJar.jar

En lugar de:

java -jvm YourJar.jar
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top