zoukankan      html  css  js  c++  java
  • 匿名内部类编译生成的class文件

    一、问题描述

      跳槽到的新公司,相比原来的公司,软件开发非常不规范,经常各种坑。项目部署到生产现场之后,出现问题,我在修改之后编译生成class文件,然后将class文件发给现场的技术支持,技术支持将class文件直接替换到生产环境,然后重启服务,这样的操作需要非常小心,因为客户随时都在用着系统。最近现场又发现了一个问题,我修改代码之后将calss文件发给现场,现场部署之后发现报错,显示类找不到。我修改后的文件中使用到了匿名内部类,正是这个内部类就没有被找到。下面是正常代码:

     我将对应的class文件复制到桌面,重新用idea打开,显示如下:

    从图中可以看出明显是找不到1这个类,突然想到这应该是因为编译出的class应该不止一个文件,于是在idea对应的class文件右键show in Explorer:

     果然发现编译产生了两个class文件,报错的原因是因为我替换的时候只替换了一个calss文件,所以报找不到类的错误。

    二、解决方法

    将编译生成的两个class文件同事替换,问题解决。匿名内部类再编译的时候会产生两个class文件,替换的时候一定要注意。

  • 相关阅读:
    postgresql 53300错误
    linux su失败:无法设置用户ID:资源暂时不可用
    shell中使用带密码的方式直接pg_dump和psql
    pg数据库查询表大小
    linux安装postgresql简洁版
    检查linux版本命令
    博客园后台搜索自己的博客
    欧式洗车
    做生意
    无线AP隔离
  • 原文地址:https://www.cnblogs.com/jxxblogs/p/13748712.html
Copyright © 2011-2022 走看看