我有一个存放静态常量的类,代码如下:public class EnvConst { public static final String BASE_URL = "xxxxxxxx"; // ………… 省略若干 ………… public static final String MAIL_HINT = "xxxxxxxxx";}
现在的问题就是,这个类在我本地修改一切正常。但是上传到服务器之后却总是显示修改之前的版本。
我搜过历史的帖子,尝试过重启Tomcat和删除Tomcat下的work目录,但还是没有更新。
我还尝试过将这个class文件删除,居然在使用这些常量的时候还能正常运行,彻底崩溃Orz求达人告诉我究竟是哪里可能还会存在缓存?
会不会是因为定义了static final的关系?PS:Tomcat版本5.0

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【seeSkyblue】截止到2008-07-30 08:41:52的历史汇总数据(不包括此帖):
    发帖的总数量:4                        发帖的总分数:340                      每贴平均分数:85                       
    回帖的总数量:211                      得分贴总数量:119                      回帖的得分率:56%                      
    结贴的总数量:4                        结贴的总分数:340                      
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:100.00%               结分的百分比:100.00%                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    敬礼!

    取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=seeSkyblue
      

  2.   

    就是work呀,把web-app下的项目删掉,work下的文件删掉,再重新发布一下试试
      

  3.   

    呵呵,用URL 127.0.0.1和localhost分别试下。。
      

  4.   

    删除work目录.重启tomcat使用本机的IP直接访问.实在还是不行......那就太邪了,卸载了重装吧哥们.
      

  5.   

    再加个方法试试看能否输出,有可能是static final的关系。
      

  6.   

    呵呵`以前遇到过一次,最后不了了之...
    看一下你项目指向的work,work文件夹不一定就是tomcat下面的,也可能是隐射的其他地方的.
      

  7.   

    我VISTA系统也遇到过修改文件没有更新的问题。 不知道你什么系统? 一 清空浏览器缓存 二 删除work目录  三 重启tomcat 四将编译过的文件重新上传 如果还不行,那真没着了。。重启机器肯定解决 呵呵
      

  8.   

    final的关系这个会在你修改了原始的class之后,必须同时重新编译那些使用这个final的类才行。
    没有什么特殊的。这就是final的特性。编译器给优化了。呵呵!
      

  9.   

    不像是服务器端程序的缓存,很可能是你本地的缓存,清空cookie,把所有ie脱机临时文件删除
      

  10.   


    果然竹子还是老的牛啊~~
    我比较了一下用final和不用final的两个类,果然看到用final的类有一大堆常量数据。
    更新了服务器之后也证明了这个理论,看来以后final还是慎用了。结帖!