2013-11-29 33 views
1

我在OS X 10.9(Maverick)上使用Grails 2.3.3。我发现如果我使用Finder浏览目录结构,它将在每个目录中创建一个.DS_Store文件(按照惯例)。这导致Grails吐出许多错误,所以我想知道我是否可以告诉grails忽略所有.DS_Store文件。如何让Grails忽略.DS_Store

详情如下。

所以在用Finder浏览之后,如果我去'grails test-app',我会收到大量的错误消息和堆栈跟踪信息。例如(堆栈跟踪正好为许多许多行 - 所以只是一个样本):

| Error Unable to obtain resource from /Users/Stevenson/grails/testApp/grails-app/.DS_Store: 
| Error java.util.zip.ZipException: error in opening zip file 
| Error  at java.util.zip.ZipFile.open(Native Method) 
| Error  at java.util.zip.ZipFile.<init>(ZipFile.java:215) 
| Error  at java.util.zip.ZipFile.<init>(ZipFile.java:145) 
| Error  at java.util.jar.JarFile.<init>(JarFile.java:153) 
| Error  at java.util.jar.JarFile.<init>(JarFile.java:117) 
| Error  at org.apache.tools.ant.AntClassLoader.getResourceURL(AntClassLoader.java:1006) 
| Error  at org.apache.tools.ant.AntClassLoader.getResource(AntClassLoader.java:887) 

这只有当它需要重新编译一个/我的任何单元测试时 - 如,我所做的更改。而且,当我'grails run-app'时没有错误报告。

我发现只有轻微的援助是这个链接(这有点说太糟糕了): https://github.com/beckje01/grails-code-coverage/issues/14

然而,不知道这是只与代码覆盖插件,或者Grails的一般。

目前,我唯一的解决办法是:

  • 不要浏览与搜索的目录结构;和
  • 如果我这样做,然后运行下面的find命令来整理。

查找整理命令:

find . -name '.DS_Store' -exec rm {} + 

但可以肯定,你可以忽略指定的文件....肯定...?

回答

2

此错误已修复Grails 2.3.4,as mentioned here。 2.3.3的解决方法是:

也得到同样的问题。对我而言,我只需从项目的根目录中删除 .DS_Store,然后从grails-app文件夹中删除 ,那时所有错误都消失了。