我从https://jdk7.java.net/source.html下载了 Java JDK 7 源代码。这是一个 100 MB 的包,包含几乎所有的源代码——除了我感兴趣的部分。
Java Access Bridge(JAB)主要由运行在不同进程中WindowsAccessBridge.dll
并JavaAccessBridge.dll
进行进程间通信的部分组成。
在源代码包中存在这些文件夹和文件:
jdk\make\bridge\JavaAccessBridge\Files_cpp.gmk
jdk\make\bridge\JavaAccessBridge\Makefile
和
jdk\make\bridge\WindowsAccessBridge\Files_cpp.gmk
jdk\make\bridge\WindowsAccessBridge\Makefile
但是所有的cpp文件都丢失了。
文件 Files_cpp.gmk 说:
FILES_cpp = \
AccessBridgeJavaVMInstance.cpp \
AccessBridgeMessageQueue.cpp \
AccessBridgeMessages.cpp \
AccessBridgeWindowsEntryPoints.cpp \
WinAccessBridge.cpp \
AccessBridgeDebug.cpp \
AccessBridgeEventHandler.cpp
ZIP 包中不存在这些 CPP 文件。
Makefile 说:
VERSIONINFO_RESOURCE = $(CLOSED_PLATFORM_SRC)/native/sun/bridge/AccessBridgeStatusWindow.rc
是什么CLOSED_PLATFORM_SRC
?
所以,现在你会告诉我:“算了!这些文件是不公开的。 ”
但是,在本文中:未收到来自 Java Access Bridge 的回调Darren Ford 写道,他已经编译了 WindowsAccessBridge 的调试版本。那是在 2009 年。所以几年前代码是可用的。
有人有这个代码并且可以为我发布吗?(我不在乎它是否来自较旧的 JDK。)或者它仍然可用但我没有找到它?
注意:在 JDK 7 之前,Accessbridge 不是 JDK 的一部分。这是一个单独的下载,必须手动安装。请参阅http://docs.oracle.com/javase/accessbridge/2.0.2/setup.htm