# build-system-cnb **Repository Path**: mirrors_cloudfoundry/build-system-cnb ## Basic Information - **Project Name**: build-system-cnb - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-09-24 - **Last Updated**: 2026-03-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # `build-system-cnb` The Cloud Foundry Build System Buildpack is a Cloud Native Buildpack V3 that enables the building of JVM applications from source. This buildpack is designed to work in collaboration with other buildpacks. ## Detection The detection phase passes if * `/build.gradle` or `/build.gradle.kts` exists * Contributes `gradle` to the build plan * Contributes `jvm-application` to the build plan * Contributes `openjdk-jdk` to the build plan * `/pom.xml` exists * Contributes `maven` to the build plan * Contributes `jvm-application` to the build plan * Contributes `openjdk-jdk` to the build plan ## Build If the build plan contains * `gradle` * Contributes a layer marked `cache` and links it to `$HOME/.gradlew` * If `/gradlew` exists * Contributes a layer marked `build`, `cache`, and `launch` by running `/gradlew -x test build` * If `$BP_BUILD_ARGUMENTS` exists, uses the specified arguments appended to the executable to build the application * Avoids building application if source code has not changed * If `/gradlew` does not exist * Contributes Gradle distribution to a layer marked `cache` with all commands on `$PATH` * Contributes a layer marked `build`, `cache`, and `launch` by running `/bin/gradle -x test build` * If `$BP_BUILD_ARGUMENTS` exists, uses the specified arguments appended to the executable to build the application * Avoids building application if source code has not changed * Replaces`` with a link to compiled application layer * If `$BP_BUILT_MODULE` exists, prepends a directory to the default glob pattern when searching for the built artifact * If `$BP_BUILT_ARTIFACT` exists, uses the specified path (including glob patterns) as the built artifact. Supersedes `$BP_BUILT_MODULE`. * `maven` * Contributes a layer marked `cache` and links it to `$HOME/.m2` * If `/mvnw` exists * Contributes a layer marked `build`, `cache`, and `launch` by running `/mvnw -Dmaven.test.skip=true package` * If `$BP_BUILD_ARGUMENTS` exists, uses the specified arguments appended to the executable to build the application * Avoids building application if source code has not changed * If `/mvnw` does not exist * Contributes Maven distribution to a layer marked `cache` with all commands on `$PATH` * Contributes a layer marked `build`, `cache`, and `launch` by running `/bin/mvn -Dmaven.test.skip=true package` * If `$BP_BUILD_ARGUMENTS` exists, uses the specified arguments appended to the executable to build the application * Replaces`` with a link to compiled application layer * If `$BP_BUILT_MODULE` exists, prepends a directory to the default glob pattern when searching for the built artifact * If `$BP_BUILT_ARTIFACT` exists, uses the specified path (including glob patterns) as the built artifact. Supersedes `$BP_BUILT_MODULE`. ## License This buildpack is released under version 2.0 of the [Apache License][a]. [a]: https://www.apache.org/licenses/LICENSE-2.0