We have released new versions of the SAP Cloud SDK. In detail, the following components are now available in new versions:
- Java libraries in version 3.8.0
- Java libraries in version 2.23.0
- Continuous delivery toolkit in version v26
At the end of the article, you will find a set of instructions on how to update to the new versions.
Java Libraries: Release Highlights 3.8.0
You can update your dependencies of the SAP Cloud SDK for Java to version 3.8.0 and consume the new version from Maven Central.
Update of OData VDM to SAP S/4HANA Cloud 1911
Recently, SAP released SAP S/4HANA Cloud 1911.
With version 3.8.0 (and 2.23.0), the SAP Cloud SDK updates the virtual data model (VDM) for OData services of SAP S/4HANA Cloud to support all newly released or updated OData services of an SAP S/4HANA Cloud 1911 system. As explained in the blog post about the VDM itself, the VDM greatly simplifies reading and writing data from an SAP S/4HANA system in your Java code.
You can use the SDK to connect to all OData services listed in the SAP API Business Hub for SAP S/4HANA Cloud. As usual, the Java representations of all OData services are available from the package
In this release of SAP S/4HANA Cloud, there was no change to the message virtual data model (VDM) that allows to consume messages from SAP S/4HANA Cloud in a type-safe manner.
Several further improvements are listed in the full release notes.
Java Libraries: Release Highlights 2.23.0
In case you have not yet upgraded your project to version 3 of the SDK for Java, we have updated the OData VDM in version 2.23.0 like we did for version 3.8.0. Still, we encourage everyone to take the small step of switching to version 3.
For a complete view on what has changed, take a look at the full release notes.
Update of OData VDM to SAP S/4HANA Cloud 1911
@sap/cloud-sdk-vdm-* in the global list of SDK modules.
Technically, the data is being collected by a npm module called
@sap/cloud-sdk-analytics. We would appreciate if you support us in our efforts to improve the SDK and enable the transmission of selected, non-sensitive data by opting in.
The OData client generator now consistently uses the entity set name instead of the entity type name for determining the generated entity class name. Also, we have fixed an issue where the number of generated entities with default name pattern was unintentionally limited to 10.
Version 1.13.1 also fixes a bug where the location ID of a destination for on-premise connectivity (via Cloud Connector) was ignored when trying to fetch CSRF tokens, leading to failing requests.
We have fixed a bug that led to a failing lookup of test destination files on windows systems related to a hard-coded
As usual, the full release notes contain a list of all improvements in this release.
Continuous Delivery Toolkit: Release Highlights v26
We have also released version v26 of our out-of-the-box continuous delivery offering consisting of a ready-made Jenkins server and a complete delivery toolkit.
New docker images for cx-server
With cx-server, we provide a convenient way to launch and manage a Jenkins server suited for running the pipeline of the SAP Cloud SDK for continuous delivery.
The container images used for cx-server have moved to a new GitHub repository and to the organization
ppiper on dockerhub.
cx-server will automatically offer you to switch to the new images and perform the necessary steps. The switch is highly recommended, because the old images are no longer maintained.
Easier editing of pipeline configuration
We have made it much easier to edit the configuration of the pipeline in an editor that supports validation of YAML files based on JSON schema. Starting with version v26, we provide a JSON schema for the pipeline configuration in the central JSON schema store. This makes editing the
pipeline_config.yml file a lot easier, as you get code completion and validation.
You can now share pipeline configuration setting between projects that are composed of multiple repositories. For details please refer to the documentation.
It is now possible to exclude specific URLs (not just destination names) from being checked against the whitelisted APIs of SAP S/4HANA Cloud.
Version v26 introduces the option to configure Jacoco code coverage thresholds more strict than the default. For details please refer to the documentation.
The pipeline only supports running in multi-branch Jenkins jobs, as described in the getting started guide. To make corresponding errors more transparent, we now give a warning when the pipeline is running as a non-multibranch job.
Also, v26 fails early if an application name on Cloud Foundry contains an underscore, as this is not supported on Cloud Foundry.
You can find further fixes and improvements in the complete release notes.
How to Update
To update the version of the SAP Cloud SDK Java libraries used in an existing project, proceed as follows:
- Open the pom.xml file in the root folder of your project.
- Locate the dependency management section and therein the
- Update the version of that dependency to
With this, you are already done thanks to the “bill of material” (BOM) approach. Your dependency should look like this:
<dependencyManagement> <dependencies> <dependency> <groupId>com.sap.cloud.sdk</groupId> <artifactId>sdk-bom</artifactId> <version>3.8.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> <!-- possibly further managed dependencies ... --> </dependencyManagement>
If you update from a version prior to 3.0.0, have a look at our migration guide.
If you are using the SAP Cloud SDK in a project of the SAP Cloud Application Programming Model, replace
sdk-modules-bom to only update the version of SDK modules, not further dependencies.
You can now recompile your project (be aware of the compatibility notes, though) and leverage the new features of the SAP Cloud SDK in version 3.8.0.
npm update in the root folder of your module. Note that this will also update other modules, unless you explicitly specify which packages to update. If you want to check beforehand what will change, use
Continuous Delivery Toolkit
If you are using the pipeline with a fixed version (as recommended since v7), update the continuous delivery toolkit with the following command, that you run on the server hosting the cx-server:
./cx-server update image