小编hyl*_*ker的帖子

如何在 Go 中重构模块名称?

我有一个名为 的 Go 模块mymodule,我想将其重命名为github.com/hylowaker/awesome-module

使用命令go mod edit -module github.com/hylowaker/awesome-module仅更改go.mod文件中的模块名称,而 go 源保持不变。我在 GoLand IDE 中尝试了重构功能,但 GoLand 不允许使用斜杠 ( /) 字符重命名。

所以我必须找到一位替代import "mymodule/..."import "github.com/hylowaker/awesome-module/...从我的源文件。

有没有更好的方法来重构它们?

refactoring go go-modules

8
推荐指数
2
解决办法
9804
查看次数

Kotlin 映射中“contains”和“containsKey”的区别

val m = mapOf<String, Int>()
m.contains("Foo")
m.containsKey("Bar")
Run Code Online (Sandbox Code Playgroud)

在 Kotlin 中,有两种方法可以Map检查映射是否具有指定的键:containscontainsKey

我知道这key in m是检查密钥是否存在的惯用方法,但我想知道为什么他们有两种方法执行相同的功能。他们之间有什么区别吗?或者它们只是某种用于兼容性的遗留代码?

kotlin

6
推荐指数
2
解决办法
8289
查看次数

gRPC: Random CANCELLED exception on RPC calls

I'm occasionally getting cancellation errors when calling gRPC methods.

Here's my client-side code (Using grpc-java 1.22.0 library):

public class MyClient {
    private static final Logger logger = LoggerFactory.getLogger(MyClient.class);
    private ManagedChannel channel; 
    private FooGrpc.FooStub fooStub;

    private final StreamObserver<Empty> responseObserver = new StreamObserver<>() {
        @Override
        public void onNext(Empty value) {
        }

        @Override
        public void onError(Throwable t) {
            logger.error("Error: ", t);
        }

        @Override
        public void onCompleted() {
        }
    };

    public MyClient() {
        this.channel = NettyChannelBuilder
            .forAddress(host, port)
            .sslContext(GrpcSslContexts.forClient().trustManager(certStream).build())
            .build();
        var pool = Executors.newCachedThreadPool( …
Run Code Online (Sandbox Code Playgroud)

grpc grpc-java

1
推荐指数
1
解决办法
555
查看次数

标签 统计

go ×1

go-modules ×1

grpc ×1

grpc-java ×1

kotlin ×1

refactoring ×1