`
cloudtech
  • 浏览: 4614775 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

XP bug 导致的java.lang.NoClassDefFoundError:javax/transaction/SystemException问题解决

 
阅读更多

XP bug 导致的java.lang.NoClassDefFoundError:

在一个项目测试中,本人开发机环境为Windows 7,测试机为Windows XP JDK版本都为jdk1.6.0_14,但程序在本人机器运行正常,拿到测试机频繁报出:

Exception in thread "ActiveCheckService-Thread" java.lang.NoClassDefFoundError:

javax/transaction/SystemException

检查不缺少jta-1.1.jar文件,下面是run.bat文件,也没有检查出问题:

@echo off

cd ../lib

set CLASSPATH=.

FOR /R "./" %%F IN (*.jar) DO call :addcp %%~sF

goto extlibe

:addcp

set CLASSPATH=%CLASSPATH%;%1

goto :eof

:extlibe

echo %classpath%

set JAVA_OPTS=%JAVA_OPTS% -Xverify:none -Xms128m -Xmx512m -XX:MaxPermSize=384m -XX:PermSize=256m

java MainClass

1、 检查系统中不缺少jta-1.1.jar文件;

2、 所有jar文件都确实加到了classpath

3、 其他服务启动正常,只要涉及到jta相关的服务就出问题;

分析:确实是jta相关的类没有加载,为什么没有加载呢?文件系统中存在jta-1.1.jar,并且可以确定jta-1.1.jar没有问题,而且在Windows 7下没有问题,在Windows XP下面就出现了问题,于是想到了classpath,就把两个环境下的classpath对比发现,在Windows 7下没有问题,而在XP下却出现了一下问题:

Windows 7

…;F:/work/PLMS_W~1/plms/READSE~1/lib/JTA-11~1.JAR;F:/work…

Windows XP

…;F:/work/PLMS_W~1/plms/READSE~1/lib/JTA-11~1.JARar;F:/work…

为什么会出现这个问题,其他的jar文件都没有问题,唯独jta-1.1.jar会变成jta-1.1.jarar,最后将jta-1.1.jar修改为jta-1.1.0.jar,问题解决,但为什么会出现这个问题,认为是Xp BUG?。

该问题折腾了大半天,以此记录为鉴。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics