Paquetes java compilados (?) en Debian

Paquetes java compilados (?) en Debian

Noto que al buscar la biblioteca jinput en Debian (creo que la "j" aquí implica que se trata de una biblioteca específica de Java, y no un simple contenedor), hay dos paquetes que podrían aplicarse:

libjinput-java/stable 20100502+dfsg-7 all
  Java Game Controller API

libjinput-jni/stable 20100502+dfsg-7 armhf
  Java Game Controller API (jni)

Tenga en cuenta que este es un sistema ARM. Sé que otros lenguajes a veces tienen dos implementaciones de algo, una más rápida que requiere compilación y una "pura" (en este caso Java) que no. Esto último parece una posibilidad poco probable en este caso, pero no lo sé con certeza; el hecho de que el primero aparezca como un paquete aplicable a "todas" las plataformas es interesante frente al segundo, que es un listado específico de la arquitectura.

Entonces, ¿cuál es la diferencia, en la nomenclatura de Debian, entre un -javapaquete y un -jnipaquete?


Ahora supongo que el -jnipaquete permite que esta biblioteca se use "al revés", es decir, desde C/C++, si alguien pudiera confirmar o negar eso...

Respuesta1

libjinput-javay libjinput-jniestán construidos a partir dela misma fuente. El -javapaquete contiene el JAR Java puro, independiente de la arquitectura, y el -jnipaquete contiene la biblioteca específica de la arquitectura que proporciona la funcionalidad nativa requerida por el paquete Java. Darse cuenta delibjinput-javadepende de libjinput-jni: no son dos implementaciones diferentes de jinput, son dos partes de jinput y ambas son necesarias para que funcione el software dependiente de jinput.

La separación de paquetes es simplemente un caso de dividir archivos independientes de la arquitectura de archivos específicos de la arquitectura.

(JNI es elInterfaz nativa de Java, que permite que los programas que se ejecutan en una JVM invoquen código en bibliotecas nativas).

información relacionada