【问题标题】:google-oauth-client-jetty cannot run on Tomcat 7google-oauth-client-jetty 无法在 Tomcat 7 上运行
【发布时间】:2017-10-14 11:42:58
【问题描述】:

当我使用 Google OAuth2 时,我需要使用该库

    <dependency>
        <groupId>com.google.oauth-client</groupId>
        <artifactId>google-oauth-client-jetty</artifactId>
        <version>1.23.0</version>
    </dependency>

但是,当我尝试在 Tomcat 7 上运行我的 webapp 时,服务器无法启动并报以下错误:

2017 年 10 月 14 日晚上 9:26:57 org.apache.catalina.core.ContainerBase startInternal 严重:子容器在启动期间失败 java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 无法启动组件 [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]]

这是什么原因?谢谢。

【问题讨论】:

  • 我也有同样的问题。您是否在某个时候找到了解决方案?
  • 我在我的 webapp 中尝试遵循谷歌的 java 快速入门教程时也遇到了同样的问题。 @tapforter 他的回答对我不起作用。

标签: tomcat jetty google-api-java-client


【解决方案1】:

似乎servlet-api 有冲突。为避免这种情况,您应该从 jetty 依赖项中排除 servlet-api

在 Maven 上:

<dependency>
  <groupId>com.google.oauth-client</groupId>
  <artifactId>google-oauth-client-jetty</artifactId>
  <version>1.23.0</version>
  <exclusions>
    <exclusion>
      <artifactId>org.mortbay.jetty</artifactId>
      <groupId>servlet-api</groupId>
    </exclusion>
  </exclusions>
</dependency>

在 Gradle 上:

compile("com.google.oauth-client:google-oauth-client-jetty:1.23.0") {
  exclude group: 'org.mortbay.jetty', module: 'servlet-api'
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-01
    • 1970-01-01
    • 2014-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-17
    • 2014-07-12
    相关资源
    最近更新 更多