Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/30-development/buildpacks-5e7fc02.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ You can choose to deploy applications by using the following Java buildpacks:

- [SAP Java Buildpack 1](sap-java-buildpack-1-ad3e8df.md) – an SAP-managed buildpack that supports Java 8, 11, 17, TomEE 7 and Tomcat 9

- [SAP Java Buildpack 2](sap-java-buildpack-2-1cf206b.md) – an SAP-managed buildpack that supports Java 17, 21, TomEE 10 and Tomcat 10
- [SAP Java Buildpack 2](sap-java-buildpack-2-1cf206b.md) – an SAP-managed buildpack that supports Java 17, 21, 25, TomEE 10 and Tomcat 10

- [Community Java Buildpack](community-java-buildpack-4e2f2b5.md) – an open-source product maintained by the [java-buildpack](https://github.com/cloudfoundry/java-buildpack) community

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Configure the collection of log and trace messages generated by a Java applicati

- For **SAP Java Buildpack 1**: You use SAP JVM 8 or SapMachine 11 or 17, and your <JAVA\_HOME\> environment variable points to this location.

- For **SAP Java Buildpack 2**: You use SapMachine 17 or 21, and your <JAVA\_HOME\> environment variable points to this location.
- For **SAP Java Buildpack 2**: You use SapMachine 17, 21 or 25, and your <JAVA\_HOME\> environment variable points to this location.

- You do **not** have any SLF4J and logback JAR files in the application.

Expand Down
3 changes: 2 additions & 1 deletion docs/30-development/sap-java-buildpack-2-1cf206b.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

SAP Java Buildpack 2 is a Cloud Foundry buildpack for running SapMachine-based applications.

This buildpack supports Java 17 and 21, as well as the following runtimes:
This buildpack supports Java 17, 21 and 25, as well as the following runtimes:

- [TomEE 10](tomee-10-66e808e.md)

Expand Down Expand Up @@ -202,6 +202,7 @@ SAP Java Buildpack 2 \(`sap_java_buildpack_jakarta`\) supports the following Jav

- Java **17** – default version. You can obtain it by using SapMachine 17 \(*it provides a JRE with Java 17*\)
- Java **21** – you can obtain it by using SapMachine 21 \(*it provides a JRE with Java 21*\)
- Java **25** – you can obtain it by using SapMachine 25 \(*it provides a JRE with Java 25*\)

To learn how to configure your application to use SapMachine JRE and JDK, see: [SapMachine](sapmachine-785d6b3.md)

Expand Down
95 changes: 48 additions & 47 deletions docs/30-development/sapmachine-785d6b3.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# SapMachine

SapMachine is an alternative to SAP JVM, and provides a Java Runtime Environment \(JRE\) with Java 11, 17, and 21.
SapMachine provides a Java Runtime Environment \(JRE\) with Java 17, 21, and 25.



Expand All @@ -19,13 +19,6 @@ SapMachine works with the following application containers:
- [Java Main](java-main-8a1786a.md)


> ### Caution:
> **Only relevant to SAP Java Buildpack 1:**
>
> Bear in mind that TomEE 7 supports only Java 7 and 8. Thus, even if your TomEE 7 application runs successfully with SapMachine JRE 17, at some point it might crash. Also, TomEE 7 has already [reached end of life](https://tomee.apache.org/tomee-7.1-eol.html). See: [Discontinued TomEE versions](https://tomee.apache.org/download-discontinued.html)



<a name="loio785d6b390b834bee818e242160f87df5__section_jre"/>

## Activation Using JRE
Expand All @@ -42,12 +35,11 @@ applications:
...
```

Without specifying a particular JRE version, your application will use the following default offline JRE, bundled within the buildpack:

- For SAP Java Buildpack 1 – SapMachine JRE 11
Without specifying a particular JRE version, your application will currently use the following default offline JRE, bundled within the buildpack:

- For SAP Java Buildpack 2 – SapMachine JRE 17

NOTE: The default major version of the SapMachine JRE will be raised from 17 to either 21 or 25. This only matters when the major version isn’t explicitly specified.

To specify a particular JRE version, use environment variable JBP\_CONFIG\_SAP\_MACHINE\_JRE.

Expand All @@ -57,9 +49,12 @@ If you set this parameter to *false*, the buildpack will attempt to download Sap



### SapMachine 11
### SapMachine 17

To stay secure, use the latest stable version of SapMachine JRE 11, which is available in the major version. Set the JBP\_CONFIG\_SAP\_MACHINE\_JRE variable like this:
> ### Tip:
> SAP Java Buildpack 2 provide a customized SapMachine JRE 17 that contains a [jdk.compiler](https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/module-summary.html) module.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
> SAP Java Buildpack 2 provide a customized SapMachine JRE 17 that contains a [jdk.compiler](https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/module-summary.html) module.
> SAP Java Buildpack 2 provides a customized SapMachine JRE 17 that contains a [jdk.compiler](https://docs.oracle.com/en/java/javase/17/docs/api/jdk.compiler/module-summary.html) module.


To stay secure, use the latest stable version, which is available in the major version of SapMachine JRE 17. Set the JBP\_CONFIG\_SAP\_MACHINE\_JRE variable like this:

```
---
Expand All @@ -68,10 +63,10 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jre.SAPMachineJRE']"
JBP_CONFIG_SAP_MACHINE_JRE: '{ version: 11.+ }'
JBP_CONFIG_SAP_MACHINE_JRE: '{ version: 17.+ }'
```

In some cases, it can be helpful to pin a particular published version of SapMachine JRE 11. To make the buildpack download this JRE version \(for example, 11.0.28\), specify it the following way:
In some cases, it can be helpful to pin a particular published version of SapMachine JRE 17. To make the buildpack download this JRE version \(for example, 17.0.17\), specify it the following way:

```
---
Expand All @@ -80,20 +75,20 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jre.SAPMachineJRE']"
JBP_CONFIG_SAP_MACHINE_JRE: '{use_offline_repository: false, version: 11.0.28 }'
JBP_CONFIG_SAP_MACHINE_JRE: '{use_offline_repository: false, version: 17.0.17 }'
...
```

**NOTE:** To stay secure, you need to update this version string on your own. For this reason, SAP does **not** recommend this approach.



### SapMachine 17
### SapMachine 21

> ### Tip:
> SAP Java Buildpack 1 and 2 provide a customized SapMachine JRE 17 that contains a [jdk.compiler](https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/module-summary.html) module.
> SAP Java Buildpack 2 provides a customized SapMachine JRE 21 that contains a [jdk.compiler](https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/module-summary.html) module.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
> SAP Java Buildpack 2 provides a customized SapMachine JRE 21 that contains a [jdk.compiler](https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/module-summary.html) module.
> SAP Java Buildpack 2 provides a customized SapMachine JRE 21 that contains a [jdk.compiler](https://docs.oracle.com/en/java/javase/21/docs/api/jdk.compiler/module-summary.html) module.


To stay secure, use the latest stable version, which is available in the major version of SapMachine JRE 17. Set the JBP\_CONFIG\_SAP\_MACHINE\_JRE variable like this:
To stay secure, use the latest stable version, which is available in the major version of SapMachine JRE 21. Set the JBP\_CONFIG\_SAP\_MACHINE\_JRE variable like this:

```
---
Expand All @@ -102,10 +97,10 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jre.SAPMachineJRE']"
JBP_CONFIG_SAP_MACHINE_JRE: '{ version: 17.+ }'
JBP_CONFIG_SAP_MACHINE_JRE: '{ version: 21.+ }'
```

In some cases, it can be helpful to pin a particular published version of SapMachine JRE 17. To make the buildpack download this JRE version \(for example, 17.0.16\), specify it the following way:
In some cases, it can be helpful to pin a particular published version of SapMachine JRE 21. To make the buildpack download this JRE version \(for example, 21.0.9\), specify it the following way:

```
---
Expand All @@ -114,20 +109,20 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jre.SAPMachineJRE']"
JBP_CONFIG_SAP_MACHINE_JRE: '{use_offline_repository: false, version: 17.0.16 }'
JBP_CONFIG_SAP_MACHINE_JRE: '{use_offline_repository: false, version: 21.0.9 }'
...
```

**NOTE:** To stay secure, you need to update this version string on your own. For this reason, SAP does **not** recommend this approach.



### SapMachine 21
### SapMachine 25

> ### Tip:
> SAP Java Buildpack 2 provides a customized SapMachine JRE 21 that contains a [jdk.compiler](https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/module-summary.html) module.
> SAP Java Buildpack 2 provides a customized SapMachine JRE 25 that contains a [jdk.compiler](https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/module-summary.html) module.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
> SAP Java Buildpack 2 provides a customized SapMachine JRE 25 that contains a [jdk.compiler](https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/module-summary.html) module.
> SAP Java Buildpack 2 provides a customized SapMachine JRE 25 that contains a [jdk.compiler](https://docs.oracle.com/en/java/javase/25/docs/api/jdk.compiler/module-summary.html) module.


To stay secure, use the latest stable version, which is available in the major version of SapMachine JRE 21. Set the JBP\_CONFIG\_SAP\_MACHINE\_JRE variable like this:
To stay secure, use the latest stable version, which is available in the major version of SapMachine JRE 25. Set the JBP\_CONFIG\_SAP\_MACHINE\_JRE variable like this:

```
---
Expand All @@ -136,10 +131,10 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jre.SAPMachineJRE']"
JBP_CONFIG_SAP_MACHINE_JRE: '{ version: 21.+ }'
JBP_CONFIG_SAP_MACHINE_JRE: '{ version: 25.+ }'
```

In some cases, it can be helpful to pin a particular published version of SapMachine JRE 21. To make the buildpack download this JRE version \(for example, 21.0.8\), specify it the following way:
In some cases, it can be helpful to pin a particular published version of SapMachine JRE 25. To make the buildpack download this JRE version \(for example, 25.0.1\), specify it the following way:

```
---
Expand All @@ -148,7 +143,7 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jre.SAPMachineJRE']"
JBP_CONFIG_SAP_MACHINE_JRE: '{use_offline_repository: false, version: 21.0.8 }'
JBP_CONFIG_SAP_MACHINE_JRE: '{use_offline_repository: false, version: 25.0.1 }'
...
```

Expand All @@ -173,17 +168,17 @@ applications:
```

> ### Note:
> SapMachine JDK is **not bundled** within the buildpack. Therefore, if you want to use SapMachine JDK 11, 17 or 21, you have to download it from the [GitHub project](https://sap.github.io/SapMachine/) as an online component.
> SapMachine JDK is **not bundled** within the buildpack. Therefore, if you want to use SapMachine JDK 17, 21 or 25, you have to download it from the [GitHub project](https://sap.github.io/SapMachine/) as an online component.
>
> However, you can use the [jdk.compiler](https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/module-summary.html) module, which is **provided** by the buildpack as part of the customized SapMachine JRE, v. 17 and 21. To learn more, see section [Activation Using JRE](sapmachine-785d6b3.md#loio785d6b390b834bee818e242160f87df5__section_jre).
> However, you can use the [jdk.compiler](https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/module-summary.html) module, which is **provided** by the buildpack as part of the customized SapMachine JRE, v. 17, 21, and 25. To learn more, see section [Activation Using JRE](sapmachine-785d6b3.md#loio785d6b390b834bee818e242160f87df5__section_jre).

To specify an online JDK version \(11, 17, or 21\), use environment variable JBP\_CONFIG\_SAP\_MACHINE\_JDK.
To specify an online JDK version \(17, 21, or 25\), use environment variable JBP\_CONFIG\_SAP\_MACHINE\_JDK.



### SapMachine 11
### SapMachine 17

To stay secure, use the latest stable version, which is available in the major version of SapMachine JDK 11. Set the JBP\_CONFIG\_SAP\_MACHINE\_JDK variable like this:
To stay secure, use the latest stable version, which is available in the major version of SapMachine JDK 17. Set the JBP\_CONFIG\_SAP\_MACHINE\_JDK variable like this:

```
---
Expand All @@ -192,10 +187,10 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jdk.SAPMachineJDK']"
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 11.+ }'
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 17.+ }'
```

In some cases, it can be helpful to pin a particular published version of SapMachine JDK 11. To make the buildpack download this JDK version \(for example, 11.0.28\), specify it the following way:
In some cases, it can be helpful to pin a particular published version of SapMachine JDK 17. To make the buildpack download this JDK version \(for example, 17.0.16\), specify it the following way:
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
In some cases, it can be helpful to pin a particular published version of SapMachine JDK 17. To make the buildpack download this JDK version \(for example, 17.0.16\), specify it the following way:
In some cases, it can be helpful to pin a particular published version of SapMachine JDK 17. To make the buildpack download this JDK version \(for example, 17.0.17\), specify it the following way:


```
---
Expand All @@ -204,17 +199,17 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jdk.SAPMachineJDK']"
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 11.0.28 }'
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 17.0.17 }'
...
```

**NOTE:** To stay secure, you need to update this version string on your own. For this reason, SAP does **not** recommend this approach.



### SapMachine 17
### SapMachine 21

To stay secure, use the latest stable version, which is available in the major version of SapMachine JDK 17. Set the JBP\_CONFIG\_SAP\_MACHINE\_JDK variable like this:
To stay secure, use the latest stable version, which is available in the major version of SapMachine JDK 21. Set the JBP\_CONFIG\_SAP\_MACHINE\_JDK variable like this:

```
---
Expand All @@ -223,10 +218,10 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jdk.SAPMachineJDK']"
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 17.+ }'
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 21.+ }'
```

In some cases, it can be helpful to pin a particular published version of SapMachine JDK 17. To make the buildpack download this JDK version \(for example, 17.0.16\), specify it the following way:
In some cases, it can be helpful to pin a particular published version of SapMachine JDK 21. To make the buildpack download this JDK version \(for example, 21.0.9\), specify it the following way:

```
---
Expand All @@ -235,17 +230,17 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jdk.SAPMachineJDK']"
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 17.0.16 }'
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 21.0.9 }'
...
```

**NOTE:** To stay secure, you need to update this version string on your own. For this reason, SAP does **not** recommend this approach.



### SapMachine 21
### SapMachine 25

To stay secure, use the latest stable version, which is available in the major version of SapMachine JDK 21. Set the JBP\_CONFIG\_SAP\_MACHINE\_JDK variable like this:
To stay secure, use the latest stable version, which is available in the major version of SapMachine JDK 25. Set the JBP\_CONFIG\_SAP\_MACHINE\_JDK variable like this:

```
---
Expand All @@ -254,10 +249,10 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jdk.SAPMachineJDK']"
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 21.+ }'
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 25.+ }'
```

In some cases, it can be helpful to pin a particular published version of SapMachine JDK 21. To make the buildpack download this JDK version \(for example, 21.0.8\), specify it the following way:
In some cases, it can be helpful to pin a particular published version of SapMachine JDK 25. To make the buildpack download this JDK version \(for example, 25.0.1\), specify it the following way:

```
---
Expand All @@ -266,16 +261,22 @@ applications:
...
env:
JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jdk.SAPMachineJDK']"
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 21.0.8 }'
JBP_CONFIG_SAP_MACHINE_JDK: '{ version: 25.0.1 }'
...
```

**NOTE:** To stay secure, you need to update this version string on your own. For this reason, SAP does **not** recommend this approach.


**Related Information**

[https://sapmachine.io/](https://sapmachine.io/ "The SapMachine Website with downloads and documentation.")
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
[https://sapmachine.io/](https://sapmachine.io/ "The SapMachine Website with downloads and documentation.")
[https://sapmachine.io/](https://sapmachine.io/) "The SapMachine Website with downloads and documentation."


[Java Main](java-main-8a1786a.md "Find out how you can create a Java application that starts its own runtime. This allows the usage of frameworks and Java runtimes, such as Spring Boot, Jetty, Undertow, or Netty.")

[SAP Java Buildpack 2](sap-java-buildpack-2-1cf206b.md "Find information about SAP Java Buildpack 2 which is a Cloud Foundry buildpack for running SapMachine-based applications.")

[https://sap.github.io/SapMachine/](https://sap.github.io/SapMachine/)
[Debug an Application Running on SapMachine](debug-an-application-running-on-sapmachine-f7fa9f3.md "Find out possibilties how to debug a Java web application running on a Cloud Foundry container that uses SapMachine.")

[Runtimes and Containers](runtimes-and-containers-83d2416.md "Find out which application runtimes and containers you can use, depending on the Java buildpack your application is using.")

Loading