J/Direct

J/Direct

J/Direct는 일부 버전의 Microsoft Java Virtual Machine에 포함되어 Windows API에 직접 호출할 수 있는 테크놀로지입니다.J/Direct는 표준 Java Native Interface(JNI; Java 네이티브 인터페이스)를 대체하는 Microsoft Virtual Machine 전용입니다.

J/Direct를 사용한 Java 프로그램은 Microsoft Windows 이외플랫폼에서는 실행되지 않습니다.

J/Direct(AFC 및 WFC함께)의 릴리스는 성장하는 Java [1]커뮤니티에서 주도권을 확보하기 위한 Microsoft의 노력의 일환이었습니다.

이로 인해 Java의 주요 장점 중 하나인 크로스 플랫폼 특성이 파괴되었기 때문에 J/Direct는 종종 Microsoft에 의해 Java의 크로스 플랫폼 기능을 약화시키려는 시도이자 수용, 확장[2]소멸 전술의 예로 간주되었습니다.

특정 Java 가상 머신이 Microsoft에 의해 폐기된 후 로 전환됩니다.NET 환경, J/Direct는 유지보수가 종료되었습니다.

아키텍처

J/Direct는 Java와 Windows 기능 간의 링크를 만들기 위해 Java 코드의 주석을 사용했습니다.J/Direct가 설계되었을 때 Java에는 주석이 존재하지 않았기 때문에 Microsoft는 Java 코멘트에 특별한 구문을 사용했습니다.

예를 들어, 다음과 같이 선언합니다.GetSysColor User32의 기능API:[3]

/** @dll.import("USER32", 엔트리 포인트="GetSysColor") */ static native int getSysColor (int nIndex);

Microsoft Java 실장에서는 User32,[4] Gdi32.dllKernel32.dll API에 바인드된 일련의 사전 정의된 클래스를 이미 제공하고 있습니다.

또한 Microsoft VM은 일부 기본 제공 규칙을 사용하여 Java 코드를 일부 Windows API 함수에 자동으로 바인딩할 수 있습니다.예를 들어 ANSI 버전과 Unicode 버전의 Windows API [5]기능 중 하나를 자동으로 선택했습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ McMillan, Robert (July 1, 1997). "Microsoft's J/Direct called death of Java". JavaWorld. Retrieved 2020-07-16.
  2. ^ "JFC; Microsoft declares war". xent.com. 1997-08-01. Retrieved 2007-07-14.
  3. ^ "Aliasing (Method Renaming)". Microsoft. Retrieved 2010-11-20.
  4. ^ "J/Direct". codeguru.com. Retrieved 2010-11-20.
  5. ^ "How the VM Chooses Between ANSI and Unicode". Microsoft. Retrieved 2010-11-20.

외부 링크