JamVm não está executando um aplicativo (que usa jpcap) no Gumstix
-
14-12-2019 - |
Pergunta
Um novato aqui, peço desculpas antecipadamente por perguntar algo bobo/óbvio.Estou tentando executar um aplicativo Java em uma placa Gumstix overo (kernel Linux 2.6.34).Até agora, instalei JamVm (jvm), compilador jikes e bibliotecas de caminho de classe (conforme instruções em este tutorial).Eu executei um programa HelloWorld e pareceu bom.
Agora, quando tento executar outro aplicativo (digamos 'MyApp') que usa bibliotecas 'jpcap', o jvm me dá um erro parecido com este:Exceção durante o envio do evento:java.lang.UnsatisfiedLinkError:Libarário nativo 'jpcap' não encontrado (como arquivo 'libjpcap.so') em gnu.classpath.boot.library.path e java.library.path...
Esta aplicação foi compilada usando Netbeans 7.1.Gerou uma pasta distante cuja estrutura é a seguinte:
dist:|-myApp.jar |-readme |-lib (pasta) | --- |-jpcap.jar | --- |-swing-layout-1.0.4.jar
O ReadMe diz que, para implantar este aplicativo, deve -se ir para a pasta dist e digitar 'java -jar "myapp.jar".Quando faço isso ('jamvm -jar MyApp.jar'), recebo o erro mencionado acima.
Minha placa gumstix tem o libpcap-1.1.1-r1.6 instalado.(Encontrei /usr/lib/libpcap.so.1 no meu quadro.)
Alguém sabe o que está acontecendo de errado?Qualquer conselho seria muito apreciado.
Ps:Publiquei esta pergunta na lista de usuários do gumstix há apenas alguns minutos.Estou postando aqui também apenas para ter mais chances de resposta.Espero que esteja tudo bem com todos aqui.
Solução
O libjpcap.so
deveria estar em gnu.classpath.boot.library.path
ou java.library.path
como afirma o erro.Você pode imprimir esses caminhos obtendo-os com System.getProperty("java.library.path")
mas /usr/lib
é um bom palpite.