在 SAP BTP 平台 Neo 环境里使用 SAP Cloud SDK 创建应用
Create a Sample Application on SCP Neo Using SAP Cloud SDK
本文目录
How to generate a project stub using a Maven Archetype
How to understand the project structure and its artifacts
How to implement and understand the Hello World Servlet
How to implement and understand the integration test
How to deploy the project
按照本文介绍的步骤,最后得到的应用:
Generate project from archetype
由于您已经安装了 Maven,您可以使用它从 SAP Cloud SDK Maven 原型生成项目存根。 只需使用您的控制台(IDE 或操作系统),导航到您项目的父目录并运行以下命令。
mvn archetype:generate -DarchetypeGroupId=com.sap.cloud.sdk.archetypes -DarchetypeArtifactId=scp-neo-javaee7 -DarchetypeVersion=RELEASE
生成过程开始后,Maven 会询问您通常的模块参数。 本文选择 firstapp 作为 artifactId / 项目名称。
groupId - 代表您的组、公司或组织的标识符(例如 com.mycompany.cloud)
artifactId - 您的应用程序的标识符(例如 firstapp)
version - 您的应用程序版本(例如 1.0-SNAPSHOT)
package - 您的源代码所在的顶级包的名称(通常等于您的 groupId,例如 com.mycompany.cloud)
提供所需的值后,Maven 将从 Cloud SDK 原型生成新项目:
生成 Maven 项目后,您可以打开您喜欢的 IDE 并将该项目加载为 Maven 项目。 将项目导入您的 IDE 后,整体结构将如下所示:
Multiple-modules project
一旦软件复杂性增加,为您的应用程序运行多模块项目的优势就变得显而易见。 这样就可以方便地将代码分发和责任分配给应用程序或测试环境的开发人员。 在可靠性和连续性方面,您将看到前端测试和测试自动化与项目的经典后端测试一样重要。 这些专业领域需要不同的编程范式,因此需要不同种类的开发生命周期。 为了确保整体软件的稳定性和可靠性,多模块设置是最佳实践解决方案。
为了让您开始,让我们来看看传统的应用程序项目,以及经典的单元测试。 然后是集成测试,用于与外部服务器和资源的代码测试。 一旦涵盖了软件测试,您将简要介绍 Cx 服务器以进行持续集成和交付。
Application module 包含您的实际 Web 应用程序的源代码和配置。
cx-server 包含用于管理最佳实践持续集成和交付软件环境 (Cx) 的脚本和配置文件。 包含的文件允许 Linux 用户简单地创建他们自己的 Cx 服务器作为 Docker 部署的一部分。
Jenkins 是将要运行的服务器。 该自动化服务器有助于管理软件开发过程的所有技术步骤。
cx-server - 这个 Unix bash 脚本允许你在本地机器上启动和停止 Jenkins 服务器,作为 Docker 容器的一部分。
server.cfg - 这是服务器参数的配置文件。
一旦根据您的个人需求配置了 Jenkins 服务器,项目根目录中的文件就会变得有用:
Jenkinsfile - 此文本文件包含 Jenkins 管道的定义,并且是项目源代码的一部分。 它定义了专门为您的应用程序运行的步骤。
pipeline_config.yml - 这是您的特定应用程序的配置文件。