Skip to content

mnlipp/jgrapes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JGrapes

See the project's home page for a detailed description of the framework.

Build Status Codacy Badge

Package Download
core Download
util Download
io Download
http Download

This repository comprises the sources for jars that provide the basic packages (org.jgrapes.core, ...util, ...io etc.). The jars have augmented manifests that allow them to be used as OSGi bundles without wrapping, but they do not depend in any way on the OSGi framework.

Short Overview

JGrapes is an event driven (message driven) component framework written in Java. It includes support for asynchronous I/O and can be used to build reactive systems. It was inspired by the "circuits framework" written for Python.

This repository is used to maintain the library with the interfaces and classes that provide the event handling features of the core framework. Some additional libraries built on top of the core which support asynchronous I/O and provide some more complex components such as an HTTP server are also maintained in this repository.

A web console that uses these basic libraries as a foundation is maintained as a separate JGrapes Web Console project.

Some extra JGrapes components (that depend on the OSGi framework and provide JGrapes based OSGi services) are maintained in a repository of their own.

See the project's home page for a detailed description of the framework.

Running

Starting with versions core-1.21.0, util-1.36.0, io-2.11.0, http-3.5.0, http.freemarker-1.17.0, JGrapes makes use of virtual threads and therefore requires Java 21 SE or newer. Binaries are currently made available at Maven Central.

repositories {
        mavenCentral()
}

dependencies {
        compile 'org.jgrapes:org.jgrapes.PACKAGE:X.Y.Z'
}

(See badge above for the latest version.)

Building

The libraries can be built with gradle build. For working with the project in Eclipse run gradle eclipse before importing the project.

If you want to use buildship, import the project as "Gradle / Existing Gradle Project". Should you encounter the (in)famous "sync problem", simply restart Eclipse.

Packages

No packages published

Languages