找不到sun.security.ssl.SSLSessionImpl


问题内容

当我尝试使用okhttpjavax.ws.rs.client.Client发生以下错误时

java.lang.NoSuchMethodError:sun.security.ssl.SSLSessionImpl。(Lsun / security
/ ssl / ProtocolVersion; Lsun / security / ssl / CipherSuite; Ljava / util /
Collection; Lsun / security / ssl / SessionId; Ljava / lang / String ; I)V

在sun.security.ssl包中搜索,没有SSLSessionImpl类

我正在使用Mac OS 10.13.3(17D102)

java -version
java version "1.8.0_162"
Java(TM) SE Runtime Environment (build 1.8.0_162-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)

在Glassfish 5.0上展开战争

build.gradle

buildscript {
    ext.kotlin_version = '1.2.30'

    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath "org.jetbrains.kotlin:kotlin-noarg:$kotlin_version"
        classpath "org.jetbrains.kotlin:kotlin-allopen:$kotlin_version"
    }
}

group 'invoice-administration-api'
version '1.0-SNAPSHOT'

apply plugin: 'idea'
apply plugin: 'war'
apply plugin: 'kotlin'
apply plugin: 'kotlin-jpa'
apply plugin: 'kotlin-allopen'

repositories {
    mavenCentral()
}

dependencies {
    compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
    compileOnly group: 'javax', name: 'javaee-api', version: '8.0'
    compile group: 'org.hibernate', name: 'hibernate-core', version: '5.2.13.Final'
    compile group: 'org.glassfish.jersey.media', name: 'jersey-media-json-jackson', version: '2.26'
}

allOpen {
    annotation('javax.ejb.Stateless')
}

compileKotlin {
    kotlinOptions.jvmTarget = "1.8"
}
compileTestKotlin {
    kotlinOptions.jvmTarget = "1.8"
}

问题答案:

编辑:由于这是“正确答案”,因此Java 1.8.0-151将可能缺少安全补丁。我不建议降级到这样的旧Java版本。

请查看Payara项目或Glassfish的新版本。

-

尝试将Java版本降级为Java 1.8.0-151。它应该工作。

我昨天(3月19日)检查了Java 8的glassfish
5中存在一个问题,创建了一个问题,但是关于该问题的夜间构建没有任何更改。