系统
Windows XP SP3;
浏览器
Chrome 版本 24.0.1312.57 m
IDE
Eclipse 4.2 Juno
以前一直在用GWT
,最近看到Vaadin
,好像不错的样子,有意学习之(截至发布时最新版本为7.0.1
)。
按官网说明,用Maven
生成一个新的Vaadin7
项目后,直接在Eclipse
里面Run on Server
(用的是Tomcat7
),结果弹窗如下:
Google一番之后找到解决办法,原来运行Vaadin项目前要先编译一次,运行mvn vaadin:compile
之后,再Refresh一下项目,然后运行,OK!
这篇博文要说的就是在编译过程中出现的一个问题,估计也不会很多人会遇到,但我还是把它写下来吧。
刚开始编译的时候,死活编译不过,看控制台输出的信息也看不出个倪端,控制台信息如下:
|
|
好吧,输出信息非常长,从中我留意到程序抛出的一个异常:java.lang.RuntimeException: Unable to write to byte cache
,一番Google之后也找不到解决方法。这就奇怪了,今天白天我在公司明明还能编译成功的,怎么回到家就不行了呢?最后细想了一下公司机器和家里机器的区别,开始怀疑是临时空间的问题。
家里的机器装了一个叫Vsuite Ramdisk
的软件,将4G内存里的600M划出来作为Ramdisk,然后把环境变量中的TEMP
和TMP
变量都指向这个Ramdisk盘,后来在编译的时候观察这个盘,果然,容量降到接近没有的时候就编译中断了。看来问题所在就是临时空间不够,于是赶紧把环境变量修改为原来的位置,再编译,Done!
总结
问题虽然不大,但也卡了我接近一晚的时间,看来有时候有些设置也不是随便可以乱改啊。