Carregar DLL com JNI

Bom dia pessoal,

Estou com o seguinte problema: Tenho uma DLL desenvolvida em C# por uma outra empresa, e preciso acessar dois métodos que estão em uma classe dentro da DLL, estes métodos usam como assinatura String.

O problema é que a classe Java não está reconhecendo os métodos por conta das assinaturas.

Alguém já teve esse problema, alguém poderia me ajudar?

Obrigado!

uma dll c# não é código nativo. É IL(Intermediate Language), ou seja, byte code dotnet. Java só pode acessar código nativo, e através de jni ou jna.
Uma solução seria criar um mapeamento em c++, para a dll C#, e mapear do java essa dll nativa. Um trabalho que eu diria porco.

Na minha opinião, é preferível reescrever o código em c++, pois ficaria uma solução adequada e sem gambiarras.

[quote=juliocbq]uma dll c# não é código nativo. É IL(Intermediate Language), ou seja, byte code dotnet. Java só pode acessar código nativo, e através de jni ou jna.
Uma solução seria criar um mapeamento em c++, para a dll C#, e mapear do java essa dll nativa. Um trabalho que eu diria porco.

Na minha opinião, é preferível reescrever o código em c++, pois ficaria uma solução adequada e sem gambiarras.[/quote]

O problema é que não posso reescrever o código, pois é um código de uma outra empresa.

Algum tutorial de como mapear a DLL ???

Obrigado.

[quote=ShOtCeL][quote=juliocbq]uma dll c# não é código nativo. É IL(Intermediate Language), ou seja, byte code dotnet. Java só pode acessar código nativo, e através de jni ou jna.
Uma solução seria criar um mapeamento em c++, para a dll C#, e mapear do java essa dll nativa. Um trabalho que eu diria porco.

Na minha opinião, é preferível reescrever o código em c++, pois ficaria uma solução adequada e sem gambiarras.[/quote]

O problema é que não posso reescrever o código, pois é um código de uma outra empresa.

Algum tutorial de como mapear a DLL ???

Obrigado.[/quote]

Aqui tem um bom tutorial.

Mas tenha em mente que seu projeto terá de usar 2 vms.

[quote=juliocbq][quote=ShOtCeL][quote=juliocbq]uma dll c# não é código nativo. É IL(Intermediate Language), ou seja, byte code dotnet. Java só pode acessar código nativo, e através de jni ou jna.
Uma solução seria criar um mapeamento em c++, para a dll C#, e mapear do java essa dll nativa. Um trabalho que eu diria porco.

Na minha opinião, é preferível reescrever o código em c++, pois ficaria uma solução adequada e sem gambiarras.[/quote]

O problema é que não posso reescrever o código, pois é um código de uma outra empresa.

Algum tutorial de como mapear a DLL ???

Obrigado.[/quote]

Aqui tem um bom tutorial.

Mas tenha em mente que seu projeto terá de usar 2 vms.[/quote]

obrigado Julio.

Não gosto de fazer esse tipo de coisa, mas vamos lá …

Assim q tiver concluído posto novamente aqui para mostrar qual foi a solução, com certeza alguém um dia terá este problema também.