`
nesuk
  • 浏览: 169507 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

由Nexus引出的JDK版本问题

阅读更多
要在公司内部的一台虚拟机上部署一套Nexus仓库,虚拟机的JDK6版本,Tomcat是6.0的最新稳定版本。从Sonatype.org下载了Nexus的最新稳定版的war包,然后扔到Tomcat下启动竟然部署失败,异常信息如下:


严重: Null component Catalina:type=JspMonitor,name=jsp,WebModule=//localhost/nexus,J2EEApplication=none,J2EEServer=none
2014-4-4 11:28:04 org.apache.catalina.startup.HostConfig deployWAR
严重: Error deploying web application archive nexus.war
java.lang.UnsupportedClassVersionError: org/sonatype/nexus/web/PlexusContainerContextListener : Unsupported major.minor version 5
1.0 (unable to load class org.sonatype.nexus.web.PlexusContainerContextListener)
        at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2858)
        at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1159)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
        at org.apache.catalina.startup.WebAnnotationSet.loadClassAnnotation(WebAnnotationSet.java:145)
        at org.apache.catalina.startup.WebAnnotationSet.loadApplicationListenerAnnotations(WebAnnotationSet.java:73)
        at org.apache.catalina.startup.WebAnnotationSet.loadApplicationAnnotations(WebAnnotationSet.java:56)
        at org.apache.catalina.startup.ContextConfig.applicationAnnotationsConfig(ContextConfig.java:297)
        at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1078)
        at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4612)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
        at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:943)
        at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:778)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:504)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
        at org.apache.catalina.core.StandardService.start(StandardService.java:525)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)



从关键异常信息“Unsupported major.minor version 51.0 ”可得知,是包里编译的class的要求最低版本与系统JDK版本不一致导致的。继续查资料,得到版本号的对应关系如下:

J2SE 8 = 52,
J2SE 7 = 51,
J2SE 6.0 = 50,
J2SE 5.0 = 49,
JDK 1.4 = 48,
JDK 1.3 = 47,
JDK 1.2 = 46,
JDK 1.1 = 45


51.0应该就是JDK7了吧,也就是说要想部署成功,系统JDK版本最低应该是7.

直接去官网down了JDK8,修改catalina变量,启动成功。

大家有多少服务器环境的JDK版本升级到7了?
分享到:
评论

相关推荐

    nexus 2.3 jdk 的仓库

    这个“nexus 2.3 jdk”的仓库版本是针对JDK 1.6编译的,意味着它支持Java 6运行环境。作为一个专业的IT大师,我会详细解释Nexus的功能、Maven仓库的概念以及如何配置和使用Nexus作为私有仓库。 1. **Nexus概述**: ...

    解决Nexus 3.XX Jdk版本问题

    Nexus 3++版本 必须要Jdk1.8 一、在启动Nexus 3++版本的时候抛错 No suitable Java Virtual Machine could be found on your system. The version of the JVM must be at least 1.8 and at most 1.8. Please define...

    微信支付解决jdk版本问题

    本篇文章将详细探讨“微信支付解决jdk版本问题”,以及如何通过替换jar包来确保系统的稳定和安全。 首先,我们要理解为何微信支付会出现与特定JDK版本不兼容的问题。Java Development Kit (JDK) 是Java编程语言的...

    class识别jdk版本

    class识别jdk版本 jdk版本 class识别jdk版本 jdk版本

    IDEA+Maven导入新包JDK版本冲突问题

    IDEA+Maven导入新包JDK版本冲突问题解决方案 IDEA 和 Maven 是 Java 开发中常用的集成开发环境和项目管理工具,但是当我们在 IDEA 中使用 Maven 管理项目时,可能会遇到 JDK 版本冲突问题。今天我们将讨论如何解决...

    JDK版本与JDBC版本的关系

    ### JDK版本与JDBC版本的关系 在探讨JDK(Java Development Kit)版本与JDBC(Java Database Connectivity)版本之间的关系之前,我们先简单了解一下这两者的基本概念。 #### 1. JDK简介 JDK是Java开发工具包,...

    windows快速切换jdk版本工具

    标题提到的“windows快速切换jdk版本工具”是一个专门解决这个问题的实用程序,它使得在多个JDK之间进行切换变得更加便捷。 这个工具的核心在于提供了一个批处理脚本(`切换jdk.bat`),它允许用户通过简单的命令行...

    JDK版本切换工具

    随着技术的不断发展,不同的项目可能需要不同版本的JDK,例如,新项目可能需要最新版的JDK以利用最新的语言特性,而老项目可能需要保持与旧版本JDK的兼容性。因此,快速在多个JDK版本间切换显得尤为重要。这就是"JDK...

    windows指定kettle的jdk版本(当前计算机已经安装多个jdk).docx

    在Windows操作系统中,当一台计算机上安装了多个Java Development Kit (JDK) 版本时,可能需要为特定的应用程序,如Kettle(Pentaho Data Integration),指定一个特定的JDK版本。这是因为不同的应用程序可能对JDK的...

    Mac 版本 jdk 11 Mac 版本 jdk 11 Mac 版本 jdk 11

    Mac 版本 jdk 11 Mac 版本 jdk 11 Mac 版本 jdk 11Mac 版本 jdk 11 Mac 版本 jdk 11 Mac 版本 jdk 11Mac 版本 jdk 11 Mac 版本 jdk 11 Mac 版本 jdk 11Mac 版本 jdk 11 Mac 版本 jdk 11 Mac 版本 jdk 11Mac 版本 jdk...

    nexus的linux版本

    1. **环境准备**:确保系统已安装Java运行环境(JRE或JDK),Nexus依赖于Java。 2. **下载Nexus**:从Sonatype官网下载适用于Linux的Nexus版本,例如`nexus-2.14.9-01`。 3. **解压安装**:将下载的压缩包解压到期望...

    nexus的jdk证书cacerts

    nexus的jdk证书cacerts

    MyEclipse6.0与jdk版本问题

    ### MyEclipse6.0与JDK版本问题详解 #### 背景介绍 在开发过程中,使用集成开发环境(IDE)时经常会遇到与Java Development Kit(JDK)版本不兼容的问题。本文将针对“MyEclipse6.0与JDK版本冲突问题”这一主题进行...

    jdk8-251 kettle9.2使用jdk版本

    标题“jdk8-251 kettle9.2使用jdk版本”和描述中提及了两个关键组件:Java Development Kit (JDK) 的8u251版本以及Kettle 9.2,这是一款流行的数据集成工具,也称为Pentaho Data Integration(PDI)。这些组件在IT...

    jdk-11.0.4-64bit.zip jdk-11版本

    jdk-11版本安装包、jdk-11版本安装包、jdk-11版本安装包 jdk-11版本安装包、jdk-11版本安装包、jdk-11版本安装包 jdk-11版本安装包、jdk-11版本安装包、jdk-11版本安装包 jdk-11版本安装包、jdk-11版本安装包、jdk-...

    动态切换JDK版本辅助工具

    在IT行业中,尤其是在Java开发领域,经常需要在不同的JDK版本之间进行切换,以适应不同项目的需求或测试兼容性问题。动态切换JDK版本是一项重要的技能,它可以帮助开发者高效地管理多个版本的Java开发环境。这里介绍...

    Idea jdk版本问题解决方案

    Idea jdk版本问题解决方案 Idea jdk版本问题解决方案是一个常见的问题,特别是在使用Maven项目时,jdk版本的不一致可能会导致编译错误或无法运行的问题。下面我们将详细介绍解决Idea jdk版本问题的方法。 问题描述...

    jdk activemq

    - **性能与兼容性**:使用早期版本的JDK可能会遇到性能瓶颈或安全问题,因此建议使用更高版本的JDK以获得更好的体验。 #### 2. JDK 1.6.x - **ActiveMQ 5.5.0 至 5.9.0**:从5.5.0版本开始,ActiveMQ开始支持JDK ...

    vbs jdk版本切换

    这是个切换jdk版本的脚本,公司的项目要用比较老的jdk版本(1.6),大多数新的框架需要比较新的jdk 版本(1.8),之前想着再买个笔记本,一个办公,一个试手,后来选半天实在不知道选哪个,,就不选了,写了这个来控制jdk 版本,...

    windows 下多个jdk版本一键切换

    windows 下多个jdk版本一键切换,只需要修改多个jdk路径即可

Global site tag (gtag.js) - Google Analytics