admin管理员组文章数量:1612098
一、发现问题
最近接到维护同事的通知说有个java写的软件不能正常运行了,拿来日志发现是以下异常:
java.lang.IllegalStateException: Current state = FLUSHED, new state = CODING_END
INFO | jvm 1 | 2010/11/26 00:01:25 | at java.nio.charset.CharsetEncoder.throwIllegalStateException(CharsetEncoder.java:933) INFO | jvm 1 | 2010/11/26 00:01:25 | at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:529) INFO | jvm 1 | 2010/11/26 00:01:25 | at sun.nio.cs.StreamEncoder$CharsetSE.flushLeftoverChar(StreamEncoder.java:358) INFO | jvm 1 | 2010/11/26 00:01:25 | at sun.nio.cs.StreamEncoder$CharsetSE.implClose(StreamEncoder.java:414) INFO | jvm 1 | 2010/11/26 00:01:25 | at sun.nio.cs.StreamEncoder.close(StreamEncoder.java:160) INFO | jvm 1 | 2010/11/26 00:01:25 | at java.io.OutputStreamWriter.close(OutputStreamWriter.java:222) 二、分析问题 (1)第一感觉是编码问题,将该软件在本机运行发现一切正常。检查源码中的中文,未发现异常字符,且可以在本机正常输出中文字符。 (2)难道是病毒惹的祸?运行环境是在局域网中运行的,而且有严格的管理规定,还有杀毒软件把关,这个可能性基本可以排除。 (3)检查该软件所在的硬盘分区,发现该分区剩余空间几乎为零。原来是这样,该软件运行需要记录运行信息到日志文件,由于异常日志信息是没有及时清除造成磁盘空间被占满不能让软件写日志,从而导致软件无法启动。 三、解决问题 清除一些无用的日志文件后,软件可以正常启动,记录日志信息,问题解决。 四、总结 发现该问题后,在网上查找了很多资料,发现这方面的资料较少,而且讲的比较深,没想到竟然是这样一个“小”问题。经过这次问题的解决过程,我觉得软件开发过程不仅需要学习新技术新方法,同样需要在不断解决这类“小”问题的过程中积累经验,这样才能提高自己的能力,才能有实力解决“大”问题。本文标签: IllegalStateExceptionlangJavaCurrentCODINGEND
版权声明:本文标题:java.lang.IllegalStateException: Current state = FLUSHED, new state = CODING_END问题查找 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1728630477a1167028.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论