我在这里按照手册操作:脉冲星功能
我在 Java 中有这个函数声明:
package org.example.test;
import java.util.function.Function;
public class ExclamationFunction implements Function<String, String> {
@Override
public String apply(String input) {
return String.format("%s!", input);
}
}
我建了这个罐子。将其复制到我的 pulsar stanalone docker 并运行以下命令:
./bin/pulsar-admin functions create --classname org.example.test.ExclamationFunction --jar java-function-1.0-SNAPSHOT.jar --inputs my-topic-1 --namespace default --name JavaFunction
进而:
./bin/pulsar-admin functions trigger --tenant public --namespace default --name JavaFunction --triggerValue "test"
现在我在 C# 中使用一些客户端来使用队列,当我阅读消息时,我看到“测试”而不是“测试!”。
所以似乎函数触发器有效,但函数本身没有生效。