Tomcat在OpenJDK 11上找不到类

时间:2019-02-28 06:34:41

标签: java spring-boot kotlin java-11 jgss

从OracleJDK 8迁移到OpenJDK 11之后,除了以下例外,我们的Tomcat 8不再启动:

Caused by: java.lang.ClassNotFoundException: org.ietf.jgss.GSSContext
    at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    ... 43 common frames omitted

我们的Spring Boot(Kotlin + Java)项目是由Gradle 5.2.1构建的,而我尝试将以下配置添加到我们的build.gradle中:

   compileJava {
      inputs.property("moduleName", moduleName)
      doFirst {
        options.compilerArgs = [
          '--module-path', classpath.asPath,
          '--add-modules', 'java.security.jgss'
        ]
        classpath = files()
      }
    }

不幸的是,这不能解决问题。如果有人提出建议,将不胜感激!

1 个答案:

答案 0 :(得分:1)

好的,我发现了如何使其工作:

我必须在IntelliJ中的VM选项中添加--add-modules java.security.jgss(并添加到Gradle(请参见下文),然后才能正常工作。)

bootRun {
  jvmArgs = ["--add-modules", "java.security.jgss"]
}