java吧 关注:1,258,932贴子:12,752,208
  • 2回复贴,共1

为什么eclipse和cmd运行jar,运行的类不一致?

只看楼主收藏回复

如图,eclipse调试,程序跑到了AppenderAction类,然后我把这个工程打成jar,在jar包里删除了这个class,jar包仍然运行?
cmd和eclipse云的是同一个jre,为了排除jvm类缓存问题我也重启电脑了,为什么呢?


IP属地:北京1楼2020-12-09 18:17回复
    今天在调试一个问题,用的logback+slf4j,为一个普通java项目添加日志,在eclipse中执行,会有日志在工作空间那个项目里,打成jar包就找不到了,为了找到jar包的日志,我开始调试,找到日志文件位置字符串后重新编译logback下的class并添加控制台输出,可我发现eclipse控制台输出了,但jar包在cmd中仍然没有输出,难道没走这个类?我尝试删了jar包中的那个class,jar包居然还能运行??怎么回事呢?


    IP属地:北京2楼2020-12-09 18:22
    回复
      2025-05-11 07:52:16
      广告
      另外我还发现,jar包里使用接口,执行时的实现类在cmd和eclipse中不一样,这个不知道是不是不同版本jdk导致的,后来我已经使用同一个jdk了,但时发现这个类都不进入了。。


      IP属地:北京3楼2020-12-09 18:25
      回复