Tiny JSON library for use in apps and games that are compiled with GraalVM Native Image. This library uses no reflection and is very small (20 kilobytes JAR file).
Passes all tests from https://json.org/JSON_checker test suite.
<repositories>
<repository>
<id>moo</id>
<url>https://repo.repsy.io/moo/maven</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>ee.moo</groupId>
<artifactId>tiny-json</artifactId>
<version>0.0.10</version>
</dependency>
</dependencies>repositories {
mavenCentral()
maven {
name = "moo"
url = uri("https://repo.repsy.io/moo/maven")
}
}
dependencies {
implementation("ee.moo:tiny-json:0.0.10")
}var data = """
{
"message": "Hello World!",
"targets": ["WORLD", "UNIVERSE"],
"size": 42,
"seen": true
}
""";
var json = Json.read(data).asObject();
System.out.println(json.get("message").asString());
for (var t : json.get("targets").asList()) {
System.out.println(t.asString());
}
System.out.println(json.get("size").asInt());
System.out.println(json.get("seen").asBoolean());Hello World!
WORLD
UNIVERSE
42
true
var object = new JsonObject();
object.put("message", "Hello World!");
object.put("targets", List.of("WORLD", "UNIVERSE"));
object.put("size", 42);
object.put("seen", true);
System.out.println(Json.write(object));{
"message": "Hello World!",
"targets": [
"WORLD",
"UNIVERSE"
],
"size": 42,
"seen": true
}var object = new JsonObject();
object.put("message", "Hello World!");
object.put("targets", List.of("WORLD", "UNIVERSE"));
object.put("size", 42);
object.put("seen", true);
System.out.println(Json.write(object));{"message": "Hello World","targets": ["WORLD","UNIVERSE"],"size": 42,"seen": true}