我正在使用 grpc 客户端net.devh.grpc-client-spring-boot-starter
客户:
@Service
public class SystemService {
@GrpcClient("handyman-client")
StatusServiceGrpc.StatusServiceBlockingStub handymanClient;
public VersionResponse getHandymanVersion() {
return handymanClient.getVersion(Empty.newBuilder().build());
}
}
Run Code Online (Sandbox Code Playgroud)
应用程序.yaml:
grpc:
client:
handyman-client:
address: static://localhost:8080
negotiationType: plaintext
Run Code Online (Sandbox Code Playgroud)
在运行时handymanClient是null. 3.0.0尝试了从到 的Spring Boot 版本3.0.2。降低spring boot版本2.7.0解决问题——现在正在创建客户端。
有没有办法让它在 Spring Boot 3 上工作?
构建.gradle:
@Service
public class SystemService {
@GrpcClient("handyman-client")
StatusServiceGrpc.StatusServiceBlockingStub handymanClient;
public VersionResponse getHandymanVersion() {
return handymanClient.getVersion(Empty.newBuilder().build());
}
}
Run Code Online (Sandbox Code Playgroud)
小智 5
基于此问题,您必须在项目中使用以下配置:
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.context.annotation.Configuration;
@Configuration
@ImportAutoConfiguration({
net.devh.boot.grpc.client.autoconfigure.GrpcClientAutoConfiguration.class,
net.devh.boot.grpc.client.autoconfigure.GrpcClientMetricAutoConfiguration.class,
net.devh.boot.grpc.client.autoconfigure.GrpcClientHealthAutoConfiguration.class,
net.devh.boot.grpc.client.autoconfigure.GrpcClientSecurityAutoConfiguration.class,
net.devh.boot.grpc.client.autoconfigure.GrpcClientTraceAutoConfiguration.class,
net.devh.boot.grpc.client.autoconfigure.GrpcDiscoveryClientAutoConfiguration.class,
net.devh.boot.grpc.common.autoconfigure.GrpcCommonCodecAutoConfiguration.class,
net.devh.boot.grpc.common.autoconfigure.GrpcCommonTraceAutoConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcAdviceAutoConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcHealthServiceAutoConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcMetadataConsulConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcMetadataEurekaConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcMetadataNacosConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcMetadataZookeeperConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcReflectionServiceAutoConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcServerAutoConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcServerFactoryAutoConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcServerMetricAutoConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcServerSecurityAutoConfiguration.class,
net.devh.boot.grpc.server.autoconfigure.GrpcServerTraceAutoConfiguration.class
})
public class GrpcConfig {
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1988 次 |
| 最近记录: |