一、錯誤描述
使用如下的命令手動創建一個Android項目
android create project -n LinearLayoutTest -t 1 -p E:/Android/workspace/LinearLayoutTest -k me.gacl.ui -a MainActivity
命令執行完成之后就會在E:/Android/workspace目錄下創建一個名字為LinearLayoutTest的Android項目,如下圖所示:
E:/Android/workspace目錄就是我的Eclipse設置的工作目錄
然后我將LinearLayoutTest項目導入到Eclipse中,結果就出現了如下錯誤:
Invalid project description.E:\Android\workspace\LinearLayoutTest overlaps the location of another project: 'LinearLayoutTest'
導入Android項目的步驟如下圖所示:
試了好幾次都不行,把項目刪掉重新創建再重新導入還是不行。
二、問題的解決辦法
2.1、解決辦法一:把當前項目剪切到別的地方,再導入一次就可以正常導入了
使用"overlaps the location of another project"關鍵字在百度上搜索,沒想到這個問題還是蠻多人遇到的,而出現這個問題的原因是:ADT是要導入是我們當前已經存在的一個Android項目的,導入后是會放到當前的workspace的根目錄下的。而我們要導入的項目,本來就被我放到“當前的workspace的根目錄下”了,所以才導致沖突的。找出了問題所在,那么解決問題的辦法就很簡單了,把當前項目,剪切到別的地方,再導入一次,就可以正常導入了。
這種方法是可以解決上述的所說的問題的,這個解決辦法也是網上所說的辦法,但是我又發現了一個新的問題,由於我的項目是使用如下的命令在cmd命令行手動創建的:
android create project -n LinearLayoutTest -t 1 -p E:/Android/workspace/LinearLayoutTest -k me.gacl.ui -a MainActivity
上面的命令中,-n指定項目的名稱,-t指定android平台,-p指定項目存放路徑,-k指定項目包名,-a指定Activity名稱。
我的創建的項目的項目名是LinearLayoutTest,Activity名稱是MainActivity,那么Eclipse在導入LinearLayoutTest項目時,會將項目命名成MainActivity,因為我的Activity名稱是MainActivity,如下圖所示:
這個結果不是我所希望的,所以方法一不是很好的解決辦法。
2.2、解決辦法二:手動創建Android項目時將Activity名稱設置成和項目名稱一樣
后來我又嘗試了另一種做法,同樣也是使用命令手動創建Android項目,只不過在創建項目時,將Activity名稱設置成和項目名稱一樣,命令如下:
android create project -n LinearLayoutTest -t 1 -p E:/Android/workspace/LinearLayoutTest -k me.gacl.ui -a LinearLayoutTest
上述命令執行完成之后就會在E:/Android/workspace目錄(E:/Android/workspace目錄就是我的Eclipse設置的工作目錄)下創建一個名字為LinearLayoutTest的Android項目,如下圖所示:
這次我們再將LinearLayoutTest項目直接導入到我們的Eclipse中,導入Android項目的步驟如下圖所示:
點擊【Finish】按鈕成功將項目導入到Eclipse中,並且也不會出現上述的錯誤,如下圖所示:
這種解決辦法是比較好的,使用命令手動創建Android項目時,將Activity名稱設置成和項目名稱一樣,這樣即使創建的項目是位於Eclipse工作的workspace目錄下也能夠正常導入,不會出現上述的問題。
這個問題是第一次遇到,在此記錄一下解決辦法!