错误提示“.class 文件中的版本错误”

2024-03-06

我使用了JSP代码并在tomcat5.5服务器下执行了相同的操作。它工作被罚款。现在我已经将相同的代码复制到其他系统的tomcat服务器下。但是在提交该 jsp 文件时,收到以下错误。导致错误的原因可能是什么?请指教。

root cause:
javax.servlet.ServletException: Bad version number in .class file (unable to load class myfirst.SearchLink)
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:841)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:774)
org.apache.jsp.Test_jsp._jspService(Test_jsp.java:70)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

java.lang.UnsupportedClassVersionError: Bad version number in .class file (unable to load class myfirst.SearchLink)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1962)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:931)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1403)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1282)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:125)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:63)
java.lang.ClassLoader.loadClassInternal(Unknown Source)
org.apache.jsp.Test_jsp._jspService(Test_jsp.java:51)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

UPDATE

即使在编译了我拥有的所有java代码之后,在当前版本的java中,我也会得到同样的错误。

最近更新

@Pangea 是的,我在 JSP 代码中使用 myfirst.SearchLink ,如下所示,

myfirst.SearchLink o=new myfirst.SearchLink(); String result=o.checkURL(url);

我的 SearchLink 的 java 代码如下,

package myfirst;

import java.net.URL;
import java.net.URLConnection;
import java.sql.*;
public class SearchLink{
public static void main(String args[]) throws Exception {


}

public String checkURL(String link)throws SQLException{
    Connection con=null;
    Statement stmt=null;
    Statement stmtR=null;
    String mem;
    if(con==null){
            SQLConnection.setURL("jdbc:sqlserver://192.168.2.53\\SQL2005;user=sa;password=365media;DatabaseName=LN_ADWEEK");
            con=SQLConnection.getNewConnection();
            stmt=con.createStatement();
            stmtR=con.createStatement();
    }
    try{
        ResultSet rs;
        boolean hasRows=false;
        rs=stmt.executeQuery("select url from urls_linkins where url='"+link+"'");
        while(rs.next()){
            hasRows=true;
            //String mem=rs.getString(1);
            rs.close();
            return "This URL already exists in DB";
        }
        rs.close();
        if (!hasRows)
        {
            URL url = new URL(link);
            String domain=url.getHost();
            String Str="This URL does not exist in DB<br><br><br>";
            rs=stmtR.executeQuery("select url from urls_linkins where url like '%"+domain+"%'");
            boolean flag=false;
            while(rs.next()){
                if(!flag){
                Str=Str+"<Br>"+"Similar Domains in DB are";
                }
                flag=true;
                mem=rs.getString(1);
                //System.out.println("Similar Domains already in DB"+mem);
                Str=Str+"<Br>"+mem;
            }
            return Str;
        }
        return "This URL does not exist in DB";
    }catch(Exception e){
        e.printStackTrace();
        return e.getMessage();
    }finally{
        if(stmtR!=null){
            stmtR.close();
        }
        if(stmt!=null){
            stmt.close();
        }
        if(con!= null){
            con.close();
        }

    }
}


public String addURL(String link,String source)throws SQLException{
        Connection con=null;
        Statement stmt=null;
        Statement stmtR=null;
        final String rssvar="Rss";
        if(con==null){
                SQLConnection.setURL("jdbc:sqlserver://192.168.2.53\\SQL2005;user=sa;password=365media;DatabaseName=LN_ADWEEK");
                con=SQLConnection.getNewConnection();
                stmt=con.createStatement();
                stmtR=con.createStatement();
    }
        try{
            PreparedStatement insertUrlStatement = con.prepareStatement("INSERT INTO urls_linkins(url, source_name, is_active, is_periodic, Link_Type, New_Entry) VALUES(?, ?, ?, ?, ?, ?)");
            //insertUrlStatement.setInt(1, 21211);
            insertUrlStatement.setString(1, link);
            insertUrlStatement.setString(2, source);
            insertUrlStatement.setInt(3, 1);
            insertUrlStatement.setInt(4, 0);
            insertUrlStatement.setString(5, rssvar);
            insertUrlStatement.setInt(6, 1);
            insertUrlStatement.executeUpdate();
            insertUrlStatement.close();
            return "The URL has been added to the Database";}
        catch(Exception e){
            e.printStackTrace();
            return e.getMessage();
        }finally{
            if(stmtR!=null){
                stmtR.close();
            }
            if(stmt!=null){
                stmt.close();
            }
            if(con!= null){
                con.close();
            }
        }


}

public String addURL1(String link,String source)throws SQLException{
        Connection con=null;
        Statement stmt=null;
        Statement stmtR=null;
        final String other="Other";
        if(con==null){
                SQLConnection.setURL("jdbc:sqlserver://192.168.2.53\\SQL2005;user=sa;password=365media;DatabaseName=LN_ADWEEK");
                con=SQLConnection.getNewConnection();
                stmt=con.createStatement();
                stmtR=con.createStatement();
    }
        try{
            PreparedStatement insertUrlStatement = con.prepareStatement("INSERT INTO urls_linkins(url, source_name, is_active, is_periodic, Link_Type, New_Entry) VALUES(?, ?, ?, ?, ?, ?)");
            //insertUrlStatement.setInt(1, 21211);
            insertUrlStatement.setString(1, link);
            insertUrlStatement.setString(2, source);
            insertUrlStatement.setInt(3, 1);
            insertUrlStatement.setInt(4, 0);
            insertUrlStatement.setString(5, other);
            insertUrlStatement.setInt(6, 1);
            insertUrlStatement.executeUpdate();
            insertUrlStatement.close();
            return "The URL has been added to the Database";}
        catch(Exception e){
            e.printStackTrace();
            return e.getMessage();
        }finally{
            if(stmtR!=null){
                stmtR.close();
            }
            if(stmt!=null){
                stmt.close();
            }
            if(con!= null){
                con.close();
            }
        }
}

public String addmultiple(String file)throws SQLException{
        return file;
}
}

这意味着您的代码是针对运行该代码的 tomcat 服务器不支持的 java 版本进行编译的。可能您将代码移至使用旧版本 java 的 5.5 之前的旧版 tomcat

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

错误提示“.class 文件中的版本错误” 的相关文章

随机推荐

  • 找不到 EditorOptionDefinition 导出错误

    在 Visual Studio 2013 中 尝试打开 C 文件时出现以下错误 No EditorOptionDefinition export found for the given option name Tabs ConvertTab
  • `find -exec` 中这个奇怪的语法是什么?

    最近我遇到了一个奇怪的 bash 脚本 它用于从内部调用自定义 bash 函数find exec 我开发了以下简单的脚本来演示我需要解释的功能 在下面的示例中 函数foo每个都会被调用find result foo echo export
  • 为什么在 Kotlin 中启动新的 Android Activity 需要 Java 类? [复制]

    这个问题在这里已经有答案了 如果我想在 Android 中启动一个新的 Activity 我需要将 Activity 传递给 Intent 但是 不要像这样简单地传递 Kotlin 类 val intent Intent Intent th
  • 如何在 iOS 5 中禁用某些部分显示为 TVOut?

    众所周知 在 iOS 5 中 我们不需要添加单独的 TVOut 功能代码行 他们已将该功能集成为内置功能 我的问题是 如果我的应用程序中有一些可用的自定义视图 但我不想将其显示为 TVOut 演示文稿 该怎么办 它应该仅显示在设备上 而不是
  • 覆盖父级的 CSS 显示属性

    我了解如何覆盖父样式 并且我知道这个示例是人为的 但是有没有一种方法 使用内联 CSS 使子范围显示 即使其父范围设置为不显示 span style display none span style display block Test sp
  • base.html 中的 Django 变量

    base html用作所有其他页面的基本模板 base html有导航栏 在导航栏中 我想显示用户收到的消息数 因此 我需要一个像这样的变量 number of messages in the base html 但是 我应该如何将这个变量
  • 使用 sqlplus 连接到 Oracle 数据库

    我在 Unix 环境中使用以下命令连接 Oracle 数据库 sqlplus test test DESCRIPTION ADDRESS LIST ADDRESS PROTOCOL TCP HOST hostname com PORT 15
  • 无返回值的条件运算符

    我有这个代码 bool value false if value Console Write true else Console Write false 我想通过使用条件运算符来缩短它 但我找不到正确的语法 bool value false
  • 批处理文件保留十行之一

    我有一个包含 n 行的文件 n 超过 1 亿 我想输出一个仅包含 10 行中的 1 行的文件 我无法将文件分成十部分并只保留一部分 因为它必须更加随机 后来我必须进行统计分析 我不能在数据中产生强烈的偏差 我正在考虑读取文件 并为每条记录如
  • Kubernetes 仪表板显示未经授权

    我使用 KUBEADM 工具 IN LOCAL 配置了具有 1 个主节点和 4 个工作节点的 kubernetes 集群 所有节点都运行良好 部署了一个应用程序并能够从浏览器访问该应用程序 我尝试了很多方法使用 kubectl 创建仪表板
  • 如何在 Xcode 中将 OpenSSL 与我的应用程序静态链接?

    我正在使用使用 OpenSSL 加密库的第三方代码 自 OSX 10 7 起 Apple 已弃用 OpenSSL 转而采用他们自己的解决方案 由于我没有加密编码经验 因此我无法移植第三方代码以使用通用加密 因此 为了防止 Apple 稍后可
  • 如何删除字符串中的尾随空格和嵌入空格?

    我正在编写一个程序 将国内和国际帐号转换为 IBAN 号码 首先 我需要形成一个字符串 银行 ID 分行 ID 帐号 ISO 国家 地区代码 这些字段中可能存在尾随空格 但并非每个帐号都具有相同的长度 有些帐号具有分支标识符 而其他帐号则没
  • shared_ptr 析构函数、复制和不完整类型

    我有一个头文件foo h像这样 无关的东西省略 pragma once include
  • 互换使用 str 和 String

    假设我正在尝试使用 Rust 做一个奇特的零拷贝解析器 str 但有时我需要修改文本 例如实现变量替换 我真的想做这样的事情 fn main let mut v Vec lt str gt Hello there world split w
  • 单行 FFMPEG cmd 合并视频/音频并保留两个音频

    我有一个项目需要将视频文件与另一个音频文件合并 预期输出是一个视频文件 其中包含实际视频中的音频和合并的音频文件 输出视频文件的长度将与实际视频文件的大小相同 是否有单行 FFMPEG 命令可以使用 copy 和 map 参数来实现此目的
  • Android 上的 OkHttp PublicKey 固定

    有谁知道我们如何使用 OkHttp3 实现公钥固定 一直在阅读有关 SSL 固定的内容 我发现我们可以使用证书固定或公钥固定 后者似乎更灵活 来实现 但我只能找到例子证书固定 https github com square okhttp w
  • WSL (Ubuntu):如何从 bash 终端在浏览器中打开 localhost

    我正在尝试打开http localhost http localhost在 WSL bash 终端的 任何 浏览器中 到目前为止我已经尝试过 如何从 URL localhost 3000 的终端打开 Google Chrome https
  • iOS 的日志框架? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 iOS 是否有一个日志框架可以帮助开发人员诊断应用程序崩溃 您可能喜欢 伐木工人 https gith
  • Bootstrap 网格列相互重叠

    我对 Bootstrap 的网格布局和其中的列重叠有疑问 我不确定问题到底是什么 任何建议将不胜感激 谢谢 div class container div class row div class col md 6 img src conte
  • 错误提示“.class 文件中的版本错误”

    我使用了JSP代码并在tomcat5 5服务器下执行了相同的操作 它工作被罚款 现在我已经将相同的代码复制到其他系统的tomcat服务器下 但是在提交该 jsp 文件时 收到以下错误 导致错误的原因可能是什么 请指教 root cause