java一个项目能有几个模块_使用/公开服务调用合成到同一项目中的多个模块

public ServerServiceCall logged(ServerServiceCall serviceCall) {

return HeaderServiceCall.compose(requestHeader -> {

System.out.println("Received " + requestHeader.method() + " " + requestHeader.uri());

return serviceCall;

});

}

我更改了实现以验证请求标头中的访问令牌,我发现在我的项目中使用多个模块中的相同实现而不是复制/粘贴是有用的 . 要做到这一点我:

在我的项目中创建了一个名为 common-tools 的模块

创建了一个名为AuthorizationService的服务及其实现

创建了一个CommunModule类并覆盖了 configure 方法

试图覆盖 Descriptor descriptor() 方法,但我无法使其编译,它总是无法编译这是方法:

@Override

default Descriptor descriptor() {

Descriptor descriptor = named("security").withCalls(

Service.call(this::logged)

).withAutoAcl(true);

return descriptor;

}

控制台输出:

no suitable method found for call(this::logged)

[ERROR] method com.lightbend.lagom.javadsl.api.Service.call(akka.japi.function.Creator>) is not applicable

[ERROR] (cannot infer type-variable(s) Request,Response

[ERROR] (actual and formal argument lists differ in length))

[ERROR] method com.lightbend.lagom.javadsl.api.Service.call(java.lang.reflect.Method) is not applicable

[ERROR] (cannot infer type-variable(s) Request,Response

[ERROR] (argument mismatch; java.lang.reflect.Method is not a functional interface))

[ERROR] method com.lightbend.lagom.javadsl.api.Service.call(com.lightbend.lagom.javadsl.api.Descriptor.CallId,java.lang.Object) is not applicable

[ERROR] (cannot infer type-variable(s) Request,Response

[ERROR] (actual and formal argument lists differ in length))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值