자바에서 C/C++, 그리고 C#의 메서드를 호출(Interop)할 수 있게 지원하는 라이브러리들이다.
1. C/C++ 메서드 호출
기본으로 자바에서 제공하는 JNI를 사용해서 C/C++의 메서드를 호출한다. 그리고, 아래는 JNI를 쉽게 사용하도록 래퍼(Wrapper)를 제공하는 라이브러리들이다.
– HawtJNI(https://github.com/fusesource/hawtjni)
– JNIWrapper(http://www.teamdev.com/jniwrapper/)
– JNIEasy(http://www.innowhere.com/jnieasy/?st=jnieasy_products#!st=jnieasy_products)
2. C# 메서드 호출
j-interop(Pure Java – Com Bridge) : http://j-interop.dimentrix.com/, 라이센스 : LGPL 3.0[1]
3. 자바 C# 양뱡 호출
– Jni4net : http://jni4net.sourceforge.net/, bridge between Java and .NET (interprocess, fast, object oriented, open-source), 라이선스: opensource, GPL tools and LGPL runtime
using net.sf.jni4net; public class Program { private static void Main() { Bridge.CreateJVM(new BridgeSetup()); java.lang.System.@out.println("Greetings from C# to Java world!"); } }
C# 예제
import net.sf.jni4net.Bridge; import java.io.IOException; import java.lang.String; public class Program { public static void main(String[] args) throws IOException { Bridge.init(); system.Console.WriteLine("Greetings from Java to .NET world!"); } }
자바 예제
– ikvm.net : http://www.ikvm.net/, jar -> .dll, .dll -> .jar