Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jetty GRPC-.IllegalArgumentException:码头ALPN/NPN未正确配置_Jetty_Grpc - Fatal编程技术网

Jetty GRPC-.IllegalArgumentException:码头ALPN/NPN未正确配置

Jetty GRPC-.IllegalArgumentException:码头ALPN/NPN未正确配置,jetty,grpc,Jetty,Grpc,我试图在pods上docker容器中启用TLS的情况下启动GRPC服务器,但在服务器启动过程中出错 我在试着转介 Java:jdk1.8.0131 OpenSSL版本:OpenSSL 1.0.1e-fips 例外情况: *Exception in thread "main" java.lang.IllegalArgumentException: Jetty ALPN/NPN has not been properly configured. at io.grpc.netty.Gr

我试图在pods上docker容器中启用TLS的情况下启动GRPC服务器,但在服务器启动过程中出错

我在试着转介

Java:jdk1.8.0131 OpenSSL版本:OpenSSL 1.0.1e-fips

例外情况:

*Exception in thread "main" java.lang.IllegalArgumentException: Jetty ALPN/NPN has not been properly configured.
        at io.grpc.netty.GrpcSslContexts.selectApplicationProtocolConfig(GrpcSslContexts.java:174)
        at io.grpc.netty.GrpcSslContexts.configure(GrpcSslContexts.java:151)
        at io.grpc.netty.GrpcSslContexts.configure(GrpcSslContexts.java:139)
        at io.grpc.netty.GrpcSslContexts.forServer(GrpcSslContexts.java:119)
        at io.grpc.netty.NettyServerBuilder.useTransportSecurity(NettyServerBuilder.java:377)
        at io.grpc.netty.NettyServerBuilder.useTransportSecurity(NettyServerBuilder.java:63)*
还想知道如何在本地测试openssl方法

这就是我试图运行jar的方式:java-jar-Denv=e1app.jar

以下是特定于GRPC的其他GRPC相关POM依赖项-我的POM中有: --延伸--


马文
os maven插件
1.4.0.1最终版本
---插件--


org.xolstice.maven.plugins
protobuf maven插件
0.5.0
protobuf:protoc:3.2.0:exe:${os.detected.classifier}
GRPCJava
io.grpc:protoc gen grpc java:1.3.0:exe:${os.detected.classifier}
编译
编译自定义
---依赖关系---


io.grpc
grpc netty
1.3.0
io.grpc
grpc协议
1.3.0
io.grpc
grpc存根
1.3.0
伊奥·内蒂
netty Tcing boringssl静态
2.0.1.最终版本

Openssl/jdk版本会成为问题吗?

您需要添加对Netty TCNative的依赖,以获得正确的安全依赖性。从gRPC文件中,您需要添加以下内容:

<project>
  <dependencies>
    <dependency>
      <groupId>io.netty</groupId>
      <artifactId>netty-tcnative-boringssl-static</artifactId>
      <version>1.1.33.Fork26</version>
    </dependency>
  </dependencies>
</project>

伊奥·内蒂
netty Tcing boringssl静态
1.1.33.26

请注意,这将在即将发布的gRPC 1.4版本中更改为指向
netty-tcnative-parent-2.0.1。尽管此问题已得到回答,但最终版

。直到今天,我还处于类似的情况,因为我无法启动jetty服务器(嵌入式)

这个解决方案可能会帮助一些正在使用SpringBoot应用程序和嵌入式jetty服务器的人

以下是pom.xml文件中的条目

<dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-tcnative</artifactId>
        <version>2.0.6.Final</version>
        <classifier>${os.detected.classifier}</classifier>
    </dependency>
    <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-tcnative-boringssl-static</artifactId>
        <version>2.0.6.Final</version>
        <classifier>${os.detected.classifier}</classifier>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>org.mortbay.jetty.alpn</groupId>
        <artifactId>alpn-boot</artifactId>
        <version>8.1.11.v20170118</version>
    </dependency>
   <dependency>
        <groupId>org.eclipse.jetty.alpn</groupId>
        <artifactId>alpn-api</artifactId>
        <version>1.1.3.v20160715</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jetty</artifactId>
    </dependency>

伊奥·内蒂

完成此操作后,如果使用STS启动spring启动应用程序,请重新构建项目并将以下条目添加到JVM参数中

java-Xbootclasspath/p:%path\u to\u alpn\u boot\u jar%

然后启动服务器,它应该可以工作


谢谢。

您是否也在使用
os maven插件(如grpc文档中推荐的那样)?使用我在pom.xml中使用的插件和依赖项更新了原始帖子谢谢Carl,它成功了。我试图使用最新版本的netty tcnative boringssl static我试图为此服务器创建节点js客户端,但出现错误:ssl_transport_security.c:628]无效证书链文件ssl_transport_security.c:601]无法加载任何根证书。请给我举一个构建NodeJS客户端的好例子,这个例子可能会涉及到它自己的单独问题。
<dependency>
            <groupId>io.grpc</groupId>
            <artifactId>grpc-netty</artifactId>
            <version>1.3.0</version>
</dependency>
<dependency>
            <groupId>io.grpc</groupId>
            <artifactId>grpc-protobuf</artifactId>
            <version>1.3.0</version>
</dependency>
<dependency>
            <groupId>io.grpc</groupId>
            <artifactId>grpc-stub</artifactId>
            <version>1.3.0</version>
</dependency>
<dependency>
            <groupId>io.netty</groupId>
            <artifactId>netty-tcnative-boringssl-static</artifactId>
            <version>2.0.1.Final</version>
</dependency>
<project>
  <dependencies>
    <dependency>
      <groupId>io.netty</groupId>
      <artifactId>netty-tcnative-boringssl-static</artifactId>
      <version>1.1.33.Fork26</version>
    </dependency>
  </dependencies>
</project>
<dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-tcnative</artifactId>
        <version>2.0.6.Final</version>
        <classifier>${os.detected.classifier}</classifier>
    </dependency>
    <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-tcnative-boringssl-static</artifactId>
        <version>2.0.6.Final</version>
        <classifier>${os.detected.classifier}</classifier>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>org.mortbay.jetty.alpn</groupId>
        <artifactId>alpn-boot</artifactId>
        <version>8.1.11.v20170118</version>
    </dependency>
   <dependency>
        <groupId>org.eclipse.jetty.alpn</groupId>
        <artifactId>alpn-api</artifactId>
        <version>1.1.3.v20160715</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jetty</artifactId>
    </dependency>