Skip to content
프로젝트

zxh0/jvm.go has 3,596 GitHub stars and 463 forks. GitHot measured +1 stars in 24 hours and 0 in 7 days. Last checked 2026-11-11 06:14 UTC. Last push 2019-12-04.

이 수치를 측정하는 방법

A toy JVM written in Go

측정된 스타 증가

in 24h
+1
in 7 days
0
in 15 days
업데이트 지연
in 1 month
업데이트 지연

서로 겹치는 기간의 순증가량이며 일별 합계가 아닙니다. 측정값이 없으면 비워 둡니다. 스타는 관심도를 나타내며 품질을 보장하지 않습니다.

README.md

Original

jvm.go

A JVM written in Go. jvm.go Logo

Introduction

jvm.go is a toy JVM (which is far from complete) programmed in Go. The main purpose of this project is learning Go and the JVM. So the number one goal of the project is readability of code. The basic idea is to just implement the core JVM, and use rt.jar (from OpenJDK) as its class library. The garbage collector is implemented by directly using Go’s GC.

My dev environment

  • Mac OS X 10.13.6
  • Java 1.8.0_201
  • Go 1.12

Build jvm.go

git clone https://github.com/zxh0/jvm.go.git
cd jvm.go
go build github.com/zxh0/jvm.go/cmd/java

Run jvm.go using your Java installation

Check your Java version and ensure JAVA_HOME env was set

./java -XuseJavaHome -cp path/to/jars:path/to/classes HelloWorld

Run jvm.go using Zulu

Download zulu jdk 8 (Zulu is a certified build of OpenJDK that is fully compliant with the Java SE standard.) and unzip it to somewhere, Copy jvm.go/java into unzipped folder

cd path/to/zulu8-macosx
cp path/to/jvm.go/java jvmgo
jvmgo -cp path/to/jars:path/to/classes HelloWorld

관련 프로젝트 살펴보기