2013-11-29 115 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文件夾中刪除 ,那時所有錯誤都消失了。