`
xujunhappy
  • 浏览: 30888 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

maven使用不当引起 Bad version number in .class file的报错

阅读更多
现象是报Bad version number in .class file的错误
实际出错是在service的一行转json的代码后面Catch JSONException的地方
由于没有提示出错的代码行,只能通过二分法在spring配置文件中逐步定位service类
然后再二分法定位报错的方法,折腾2小时。
原因最后查明:
本地的maven lib库里json-1.0.jar 有两个版本,1.0是jdk5编译的,20090211是1.6编译的;
之前的负责架构的在将ant迁到maven时,用20090211 替换了1.0,后来使用发现了问题。
项目建了三个maven module project。A+B+C,B和C是两个模块,当初更正了A的pom,但没有改BC的pom,因为BC没有用到转json,因此一直没有出问题。
A中的转json都是在action中,这次出错时是因为有人将转json写在service中。检查junit的运行环境,发现含有包20090211,估计是从BC关联引用的。
修改B、C的pom将json版本改为1.0,再检查junit的运行的source里面已经没有20090211的包。再运行,不再报版本不一致的错误。
教训:检查问题时,在A中,点JSONException,指向的是1.0版本jar包,此时未检查junit的运行参数。


分享到:
评论

相关推荐

    javax.xml.ws.Service 报错需要的包

    3. **Maven或Gradle构建问题**:如果你使用的是Maven或Gradle这样的构建工具,确保在pom.xml或build.gradle文件中添加了正确的依赖。对于Maven,可能需要添加如下的依赖: ```xml <groupId>javax.xml.ws ...

    maven-shade-plugin-3.1.0.jar

    <groupId>org.apache.maven.plugins <artifactId>maven-shade-plugin <version>3.1.0</version> <phase>package <goal>shade implementation="org.apache.maven.plugins.shade.resource....

    apache-maven-3.6.1-bin.tar.gz

    Apache Maven 是一个强大的项目管理和构建工具,主要用于Java应用程序的开发。在给定的标题"apache-maven-3.6.1-bin.tar.gz"中,我们可以看出这是Maven的一个发行版本,版本号为3.6.1,且以tar.gz格式打包,这通常是...

    apache-maven-3.5.4-bin.tar.gz

    Apache Maven 是一个强大的Java项目管理工具,它基于项目对象模型(Project Object Model,POM)的概念,能够自动化构建、依赖管理和项目信息管理。Maven 3.5.4是Maven的一个稳定版本,包含了多项改进和修复,为...

    解决环信导入源码后io.swagger的导入报错

    1. **检查构建工具配置**:如果你使用的是Maven或Gradle作为构建工具,确保在`pom.xml`或`build.gradle`文件中包含了`io.swagger`的相关依赖。如果没有,你需要手动添加。例如,对于Maven,可以在`pom.xml`中添加...

    新建Maven项目时出错:org.apache.maven.archiver.MavenArchiver.getManifest

    org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apache.maven.archiver.MavenArchiveConfiguration) 解决方案: 第一种方式 war项目 <groupId>org.apache....

    apache-maven-3.8.4-bin.tar.gz

    Apache Maven 是一个强大的Java项目管理工具,它基于项目对象模型(Project Object Model,POM)的概念,用于构建、管理和依赖关系解决。`apache-maven-3.8.4-bin.tar.gz` 是Apache Maven 3.8.4版本的二进制发行版的...

    ojdbc-all.jar pom.xml ojdbc报错所需的资源包

    `ojdbc报错所需的资源包`可能是指在使用Oracle JDBC驱动时遇到的问题,这些问题可能由以下原因引起: 1. **驱动版本不匹配**:如前所述,JDBC驱动需要与JDK版本兼容。 2. **类路径问题**:确保`ojdbc-all.jar`或者`...

    maven-jar-plugin-3.1.1.jar

    maven-jar-plugin-3.1.1.jar

    Eclipse导入Maven项目pom.xml报错的解决办法.doc

    在使用Eclipse进行Java开发时,Maven是一个不可或缺的工具,它通过POM(Project Object Model)文件来管理项目的构建、依赖和文档。然而,在实际操作中,有时会在导入Maven项目时遇到pom.xml报错的问题。这个问题...

    maven jar包

    maven-aether-provider-3.2.1-sources.jar maven-antrun-plugin-1.3.jar maven-archiver-2.2.jar maven-artifact-3.2.1-sources.jar maven-assembly-plugin-2.2-beta-5.jar maven-bundle-plugin-1.0.0.jar maven-...

    apache-maven-3.6.2-bin.tar.gz

    配置完成后,可以通过运行`mvn -version`命令检查Maven是否已正确安装并配置。一旦Maven准备就绪,开发者就可以利用它来创建项目(`mvn archetype:create`),编译源代码(`mvn compile`),运行测试(`mvn test`)...

    aspectjweaver-1.9.6.jar报错error in opening zip file,下载后替换

    java: 读取D:\Develop\maven\repository\org\aspectj\aspectjweaver\1.9.6\aspectjweaver-1.9.6.jar时出错; error in opening zip file 提示jar出问题,找到此处,删除重新下载,但是jar依旧是损坏状态

    spring5.0.X源码报错缺失的两个包

    如果你使用的是Maven或Gradle,可以检查`pom.xml`或`build.gradle`文件,确保对应的依赖条目存在并且版本正确。对于Maven,可能需要添加如下依赖: ```xml <groupId>cglib <artifactId>cglib <version>3.2.5</...

    Jenkins编译报错Failed to execute goal org.apache.maven.plugins_maven-clean-plugin

    Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project

    com.springsource.tcl.lang.jacl-1.4.1生成报错替换包.zip

    在使用这个替换包之前,确保备份原有的jar文件,并按照项目依赖管理的规则正确引入新包,例如通过Maven或Gradle等构建工具。 对于遇到这类问题的开发者,理解TCL和Jacl的基本概念、熟悉Java的类加载机制以及如何...

    新建maven后pom. xml报错解决方法

    <groupId>org.apache.maven.plugins <artifactId>maven-resources-plugin <version>2.4.3</version> ``` 这段代码指定了`maven-resources-plugin`插件的版本为2.4.3。如果在构建过程中出现了与该插件相关的错误...

    maven3搭建的spring邮件项目

    【标题】:“maven3搭建的spring邮件项目” 在IT领域,开发人员经常需要与用户进行交互,其中发送电子邮件是一种常见的通信方式。本项目利用Maven3构建了一个基于Spring框架的邮件服务,允许开发者轻松地集成邮件...

    maven-archetype-webapp-1.0.jar下载

    2. **创建项目**:在命令行中,使用`mvn archetype:generate`命令,并指定对应的archetype id,如`maven-archetype-webapp`,然后按照提示输入项目信息,如groupId、artifactId和version。 3. **编译与运行**:生成...

    apache-maven-3.2.3-bin.tar.gz

    Maven 使用一种标准化的项目对象模型(Project Object Model,POM),通过依赖管理和项目生命周期的概念,帮助开发者自动化构建过程。"apache-maven-3.2.3-bin.tar.gz" 是Apache Maven 3.2.3版本的二进制发行包,以...

Global site tag (gtag.js) - Google Analytics