Pacotes java compilados (?) no Debian

1

Eu observo a procura da biblioteca jinput no Debian (eu acredito que o "j" aqui implica que esta é uma biblioteca específica do Java, e não um simples wrapper), que existem dois pacotes que podem ser aplicados:

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

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

Observe que este é um sistema ARM. Eu sei que outras linguagens às vezes têm duas implementações de algo, uma mais rápida que requer compilação e um "puro qualquer" (neste caso, java) que não requer. Este último parece uma possibilidade improvável aqui, mas não sei ao certo; o fato de que o primeiro aparece como um pacote aplicável a "todas" plataformas é interessante versus o segundo, que é uma listagem específica de arquitetura.

Então, qual é a diferença, na nomenclatura do Debian, entre um pacote -java e um pacote -jni ?

Agora estou supondo que o pacote -jni permita que essa biblioteca seja usada "ao contrário", ou seja, a partir de C / C ++, se alguém puder confirmar ou negar isso ...

    
por goldilocks 31.05.2016 / 14:51

1 resposta

5

libjinput-java e libjinput-jni são criados a partir da mesma fonte . O pacote -java contém o Java JAR puro, independente de arquitetura, e o pacote -jni contém a biblioteca específica da arquitetura que fornece a funcionalidade nativa requerida pelo pacote Java. Observe que libjinput-java depende de libjinput-jni : eles não são duas implementações diferentes de jinput, eles são duas partes do jinput e ambas são necessárias para que o software dependente de jinput funcione.

A separação de pacotes é simplesmente um caso de dividir arquivos independentes de arquitetura de arquivos específicos da arquitetura.

(JNI é a Java Native Interface , que permite a execução de programas em um JVM para chamar o código em bibliotecas nativas.)

    
por 31.05.2016 / 15:19

Tags