2016-11-06 王夫子 大猿软件
就在刚才,遇到一个奇葩问题,让我久久不能平复心情,特属予作文以记之。
代码如下:
代码看起来没毛病,但是当我编译的时候,竟然告诉我如下信息:
A class file was not written. The project may be inconsistent, if so try refreshing this project and building it.
大概的意思是说:编译的class文件不能写入磁盘,让我刷新重新构建项目。于是我用多年的码农经验重新审视了代码,结果还是没毛病。这可咋整,开始怀疑人生了。
我用了百度,查了一下,说“Con”文件名是操作系统保留字。窝草!“操作系统保留字”,你没看错!撸这么多年代码,终于跟操作系统干上了,兴奋...
百度还说,除了"con",还有其他的保留字,如下:
CON, PRN, AUX, CLOCK$, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, and LPT9
这些都是windows操作系统保留字,也就是说,你不能在windows系统中使用这些名字当做文件名,其他系统我就不知道了。
这个bug着实惊到了我,我记你一辈子。