本文介绍如何将您的Java代码使用Maven编译、打包,并部署代码至函数计算。
添加依赖库
要创建部署代码包,请将函数代码和依赖库共同编译并打包为ZIP包。
函数计算平台为Java运行时提供了 fc-runtime-core 库,您可以将其添加到项目的pom.xml文件中:
<dependency>
<groupId>com.ctg.faas.runtime</groupId>
<artifactId>fc-runtime-core</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
编译和部署
前提条件
请确保您的本地环境已经安装了Java和Maven。
操作步骤
创建一个Maven项目,并在src/main/java/example目录下创建HelloApp.java ,代码示例如下:
package example;import com.ctg.faas.runtime.Context;
import com.ctg.faas.runtime.PojoRequestHandler;
import example.model.SimpleRequest;
import example.model.SimpleResponse;
public class HelloApp implements PojoRequestHandler<SimpleRequest, SimpleResponse> {
@Override
public SimpleResponse handleRequest(SimpleRequest request, Context context) {
String message = "Hello, I am " + request.getFirstName() + " " + request.getLastName();
return new SimpleResponse(message);
}
}
在pom.xml文件中配置build,示例如下:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<finalName>code</finalName>
<outputFile>${project.build.directory}/code.jar</outputFile>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
打开命令行窗口,切换至项目的根目录,然后执行 mvn clean package
命令进行打包。打包成功后在target目录下会生成code.jar文件。
对于Linux/macOS系统,执行 zip code.zip code.jar
命令将jar打包成zip文件。对于Windows系统,您可以选中code.jar文件,单击鼠标右键,选择打包为ZIP包。
进入函数计算控制台,在创建函数页面的函数代码-代码来源选择通过ZIP包上传代码 ,进行上传刚打包的ZIP文件。
或者在函数计算控制台找到对应的目标函数,然后在函数详情页面的右上角点击上传代码-上传zip进行上传刚打包的ZIP文件。