GitHunt

Note

The repository of the underlying solver ECOS is inactive. Moreover, ECOS has known issues with performance and numerical stability.
Hence, we decided to stop the development of ecos4j and to archive it.

If you are interested in solving convex optimization problems with Java, then you may use our project clarabel4j.
The underlying native solver Clarabel improves the algorithm and implementation of ECOS and is under active development.

ECOS Solver for Java Native Libraries

Build
Maven Central
GPLv3 licensed

ecos4j-native (ECOS Solver for Java Native Libraries) bundles shared library release binaries
of ECOS for ecos4j for Linux (linux_64), Windows (windows_64), and MacOS (osx_arm64).

Usage

Dependency

Add the latest version from Maven Central to
your pom.xml

<dependency>
    <groupId>com.ustermetrics</groupId>
    <artifactId>ecos4j-native</artifactId>
    <version>x.y.z</version>
    <scope>runtime</scope>
</dependency>

Build

Release

Update the version in the pom.xml, create a tag, and push it by running

export ECOS_VERSION=X.Y.Z
export VERSION=X.Y.Z
export VERSION=$VERSION-$ECOS_VERSION
git checkout --detach HEAD
sed -i -E "s/<version>[0-9]+\-SNAPSHOT<\/version>/<version>$VERSION<\/version>/g" pom.xml
git commit -m "v$VERSION" pom.xml
git tag v$VERSION
git push origin v$VERSION

This will trigger the upload of the package to Maven Central via GitHub Actions.

Then, go to the GitHub repository releases page and update the
release.

Credits

This project is based on the native open source mathematical programming
solver ECOS,
which is developed and maintained by embotech, Alexander Domahidi, and others.

Languages

Java100.0%

Contributors

GNU General Public License v3.0
Created March 16, 2024
Updated July 26, 2025
atraplet/ecos4j-native | GitHunt