Pergunta

Eu quero usar APIs do Windows em Jruby. Por favor, sugira qualquer API que possa fazer o trabalho de Ctypes (Python).

Foi útil?

Solução

Jruby inclui a API da FFI, que foi criada originalmente para Rubinius, mas agora é apoiada em Jruby, Macruby, Maglev, Tinyrb, RM e Yarv (os dois últimos através da gema FFI) também.

A API da FFI foi projetada especificamente para facilitar a ligação às bibliotecas C, sem precisar escrever nenhum C (todos os mapeamentos são escritos em um DSL do Ruby declarativo).

Daniel J. Berg, o mantenedor da Gem Win32-Api e todas as outras bibliotecas Win32 está atualmente trabalhando para que eles corram em Jruby, portando-os para a FFI, mas ele bateu em alguns obstáculos, infelizmente.

Outras dicas

Você pode usar a API JAN JNA

Ver Jruby conhece a API do Windows

http://blog.headius.com/2008/10/ffi-for-ruby-now-available.html

Jruby tem uma interface de função estrangeira. Não tenho certeza sobre o suporte do estado do Windows, mas provavelmente está ficando atrás da versão *nix.

Como alternativa, você pode escrever seus próprios invólucros usando JNI e Java Normal e usá -los através de Jruby

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top