2013-08-07 37 views
1

我們有一個共享的intellij項目,我們用它來構建我們的android應用程序。一個人(出像10)最近遇到了一個生成錯誤:strings.xml中重複的字符串名稱

android-apt-compiler: [ui] <path>\strings.xml:454: error: Resource entry <name> is already defined. 

尋找到它,果然有字符串資源的重複定義,無論是在相同的strings.xml檔案。這些應該是固定的,因爲這根本沒有意義。

但這裏是我不明白:儘管在strings.xml中有重複的條目,其他人都可以構建得很好。我認爲我們的全球或項目設置(儘管共享項目)之間存在一些我看不到的差異。

任何想法在哪裏看?謝謝。

回答

0

今天我們遇到了類似的問題。當我們的一位開發人員首次嘗試構建項目時,構建失敗,引用了strings.xml中的重複節點。事實上,strings.xml中有重複的內容,但這之前並沒有出現問題,其他人都可以使用相同的strings.xml構建同一個項目而不會出現問題。

在我們的案例中,該解決方案在intellij項目的「項目結構」設置中找到。我們的項目引用了一些其他的「Android庫」項目,但無法構建的開發人員沒有在相關模塊的「Android」配置節點中勾選「庫項目」複選框。勾選此複選框後,項目會成功建立,並且我們確認取消選中該框會導致編譯失敗。

我不能說爲什麼這個選項會有這種效果,但在我們的情況下,這是解決方案。

+0

更改Libray項目標誌對我無效 – emmby

1

我能夠通過降級到IntelliJ 13.0.3並從maven重新導入我的項目來解決問題。 YMMV