如何让Grails忽略.DS_Store

时间:2013-11-29 00:29:42

标签: grails

我在OS X 10.9(Maverick)上使用Grails 2.3.3。我发现如果我使用Finder浏览目录结构,它将在每个目录中创建一个.DS_Store文件(按照惯例)。这导致grails吐出大量错误,所以我想知道我是否可以告诉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有关。

目前,我唯一的解决方案是:

  • 不要使用Finder浏览目录结构;和
  • 如果我这样做,则运行下面的find命令来整理。

查找整理命令:

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

但是你肯定可以忽略指定的文件....当然......?

1 个答案:

答案 0 :(得分:2)

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

  

也遇到同样的问题。对我来说,我只需要删除一个   .DS_Store来自项目的根目录,以及grails-app文件夹 -   在那一刻,所有错误都消失了。