Skip to content

About

Open Liberty is a highly composable, fast to start, dynamic application server runtime environment

Resources

Contributing

Security policy

Stars

1.3k stars

Watchers

37 watching

Forks

Repository files navigation

title


Maven Central Container Images Website Stack Overflow Groups.io License Twitter

Summary

A lightweight open framework for building fast and efficient cloud-native Java microservices:

  • Open Liberty is fast to start up with low memory footprint and live reload for quick iteration.
  • Simple to add and remove features from the latest versions of MicroProfile and Java EE.
  • Zero migration lets you focus on what's important, not the APIs changing under you.

Getting Started

Launch a sample app using Maven

git clone https://github.com/OpenLiberty/sample-getting-started.git
cd sample-getting-started
mvn clean package liberty:run

Open browser to http://localhost:9080/ and explore the demo application.

See this guide to learn how it works.

Downloads

Usage

Docker

  • This guide demonstrates development using Docker containers.

Maven

  • This guide demonstrates development using the Liberty Maven Plugin.

Command Line

Open Liberty Docs

Contributing

Our CONTRIBUTING document contains details for submitting pull requests. FYI: The project recently renamed master branch to release. More info here: https://github.com/OpenLiberty/open-liberty/wiki/Master-rename-to-Release

Running a Build

  1. Clone the repository to your system.

     git clone git@github.com:OpenLiberty/open-liberty.git
    
  2. Run a gradle build.

    Prerequisite - Environment variable JAVA_HOME must point to a Java 17 or Java 21 SDK. If setting JAVA_HOME to Java 17, you will also need to set JAVA_21_HOME to a Java 21 SDK.

     cd open-liberty/dev
     ./gradlew cnf:initialize
     ./gradlew assemble
    

    Troubleshooting - If ./gradlew assemble shows out of memory error, you can increase the memory in dev/gradle.properties file. Stop the gradle daemon after you change the memory setting by using ./gradlew --stop. If it does not help the problem, try cleaning up your maven repository cache (using rm -rf ~/.m2) and gradle cache (using rm -rf ~/.gradle/caches).

  3. Run the unit or FAT tests. Description here

    ./gradlew test for unit tests

    ./gradlew build.example_fat:buildandrun to run a FAT project

    NOTE: ./gradlew build runs the assemble and test tasks

  4. Perform a local release

    ./gradlew releaseNeeded

    NOTE: This task releases all projects to the local releaseRepo. The final openliberty zip can be found in

    open-liberty\dev\cnf\release\dev\openliberty\<version>\openliberty-xxx.zip

License

Usage is provided under the EPL 2.0 license See LICENSE for the full details.

About

Open Liberty is a highly composable, fast to start, dynamic application server runtime environment

Resources

Contributing

Security policy

Stars

1.3k stars

Watchers

37 watching

Forks

Releases

Packages

Contributors

Languages