Go 語言編寫的 JVM 虛擬機:jvm.go

y37f 9年前發布 | 32K 次閱讀 jvm.go Google Go/Golang開發

jvm.go是一個Go語言編寫新的JVM(但遠遠還沒有完成)。這個項目的主要目的是學習JVM。因此,該項目的頭號目標就是代碼的可讀性。其基本思路是只實現核心JVM,并使用rt.jar(來自OpenJDK)作為其類庫。 GC是直接使用Go的。對我來說,最難的是線程和類加載器。

Go 語言編寫的 JVM 虛擬機:jvm.go

開發環境:

  • Mac OS X 10.10.2

  • Java 1.8.0_31

  • Go 1.4

構建方法:

export GOPATH=path/to/jvm.go/
go install jvmgo

創建如下目錄結構:

path/to/jvm.go/bin
├── jvmgo
└── jre/
    ├── lib/
    ├── rt.jar
    ├── currency.data
    └── net.properties

執行:

cd path/to/jvm.go/bin
./jvmgo -cp path/to/jars:path/to/classes HelloWorld

項目主頁:http://www.baiduhome.net/lib/view/home/1426388106246

 本文由用戶 y37f 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!