Acessando classes Java pelo .NET

35 views
Skip to first unread message

Eric Lemes

unread,
May 20, 2013, 8:19:29 PM5/20/13
to dotnetar...@googlegroups.com
Galera,

Alguém já teve que acessar API's java pelo .NET? Algum caminho das pedras?

Eu pensei em chamar o JNI através de P/Invoke. Alguém acha que eu estou maluco?

--

Juan Lopes

unread,
May 20, 2013, 8:35:58 PM5/20/13
to dotnetar...@googlegroups.com
Acho que funcionaria, mas me parece meio sujo:

http://stackoverflow.com/questions/992836/how-to-access-the-java-method-in-a-c-application

2013/5/20 Eric Lemes <eric...@gmail.com>:
> --
> Você recebeu esta mensagem porque faz parte do grupo .Net Architects
> hospedado no Google Groups.
> Para postar envie uma mensagem para dotnetar...@googlegroups.com
> Para sair do grupo envie uma mensagem para
> dotnetarchitec...@googlegroups.com
> Para mais opções visite o grupo em
> http://groups.google.com/group/dotnetarchitects?hl=pt-br
> ---
> Você está recebendo esta mensagem porque se inscreveu no grupo ".Net
> Architects" dos Grupos do Google.
> Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie
> um e-mail para dotnetarchitec...@googlegroups.com.
> Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>
>



--
https://github.com/juanplopes

Eric Lemes

unread,
May 20, 2013, 8:40:07 PM5/20/13
to dotnetar...@googlegroups.com
É mais ou menos isso que eu queria fazer, só que direto do .NET via P/Invoke (Ex.: http://ericlemes.com/2010/06/23/dotnet-interop-pt/)

A dúvida é qual dll o jni.h consome no Windows... vou fazer uns testes aqui....

Já tentou por aí Juan?


Abraço,

Eric


2013/5/20 Juan Lopes <m...@juanlopes.net>



--

Juan Lopes

unread,
May 20, 2013, 8:50:52 PM5/20/13
to dotnetar...@googlegroups.com
Não, nunca tentei. Há muito tempo fiz o contrário (consumir uma dll
.net no Java, mas usando activex). Mas me parece que é um tema bem
recorrente por ai.

http://jni4net.sourceforge.net/
Já viu?

--
https://github.com/juanplopes

Priscila Mayumi Sato

unread,
May 20, 2013, 8:56:24 PM5/20/13
to dotnetar...@googlegroups.com
Juan,

aproveitando que você fez o caminho inverso: em um cenário onde há um código (sim, código) escrito m C# mas em uma aplicação rodando na jvm que quer passar esse código para um executavel c# para rabalhar com ele você sugere algo do genero citado ou que haja um serviço entre os dois para isso?

(ou eu tô falando muita grosselha?)

--
Você recebeu esta mensagem porque faz parte do grupo .Net Architects hospedado no Google Groups.
Para postar envie uma mensagem para dotnetar...@googlegroups.com
Para sair do grupo envie uma mensagem para dotnetarchitec...@googlegroups.com
Para mais opções visite o grupo em http://groups.google.com/group/dotnetarchitects?hl=pt-br
---
Você está recebendo esta mensagem porque se inscreveu no grupo ".Net Architects" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para dotnetarchitec...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.





--
Priscila Mayumi Sato
Twitter: @MayogaX

Eric Lemes

unread,
May 20, 2013, 8:57:05 PM5/20/13
to dotnetar...@googlegroups.com
Eu vi sim. O problema é que eu tenho algumas restrições pra usar biblioteca open source. :-(

Tava olhando o header jni.h. Nâo sei se estou com essa inspiração toda.... rs. Pelo visto não teve nenhum retardado que tentou portar isso pra .NET

Parece que fazer um wrapper em C++, exportar numa dll e consumir do .NET é menos sofrimento.

Pior que eu vou ter que construir um bom pedaço de um sistema em Java, só por causa de uma chamada a uma API de 3o (um pacote) que é em java. Nada contra o java, pelo contrário, vai ser divertido. A questão é o know how pra manter depois. Queria fazer só uma classezinha .NET que cuidasse da chamada no ponto específico que chama a API de 3o, mas não queria enfiar nada no meio do caminho (arquivo, MQ, web service etc.,) pra não perder desempenho.

De qualquer maneira, muito obrigado por sua ajuda a explorar o tema. 


Abraço,

Eric




2013/5/20 Juan Lopes <m...@juanlopes.net>
Não, nunca tentei. Há muito tempo fiz o contrário (consumir uma dll
--
Você recebeu esta mensagem porque faz parte do grupo .Net Architects hospedado no Google Groups.
Para postar envie uma mensagem para dotnetar...@googlegroups.com
Para sair do grupo envie uma mensagem para dotnetarchitec...@googlegroups.com
Para mais opções visite o grupo em http://groups.google.com/group/dotnetarchitects?hl=pt-br
---
Você está recebendo esta mensagem porque se inscreveu no grupo ".Net Architects" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para dotnetarchitec...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.


Cassio Batista Pereira

unread,
May 20, 2013, 10:11:47 PM5/20/13
to dotnetarchitects
Uma vez precisei fazer isso, mas o acesso era "diferente" via WEb Services mesmo nas duas pontas!

Não é o seu caso né Eric?


photo
Cássio Batista Pereira
Arquiteto de Software
Cássio Developer S. E. Ltda
t: (11) 4549-2643 | m: (11) 9 9943-0820         | e: cas...@cassiobp.com.br | w: http://www.cassiobp.com.br


2013/5/20 Eric Lemes <eric...@gmail.com>

Thiago custódio

unread,
May 20, 2013, 10:52:19 PM5/20/13
to Cassio Batista Pereira, dotnetarchitects
Saiu um curso da pluralsight sobre o assunto:

http://www.pluralsight.com/training/Courses/TableOfContents/java-jvm-dotnet-interop

Enviado pelo meu Windows Phone

De: Cassio Batista Pereira
Enviada em: 20/05/2013 23:12
Para: dotnetarchitects
Assunto: Re: [dotnetarchitects] Acessando classes Java pelo .NET

Eric Lemes

unread,
May 21, 2013, 7:31:12 AM5/21/13
to dotnetar...@googlegroups.com

Não pq web services aumentaria demais o overhead.

Abraço

Eric

Reply all
Reply to author
Forward
0 new messages