我需要一些幫助來找出組織我的Android項目的最佳方式(或最佳做法)。爲了簡單起見,假設我的Android Eclipse工作區是C:\Android\Projects\
。在該文件夾內,我喜歡從庫中分離應用程序,並且我有兩個其他文件夾,分別爲C:\Android\Projects\Applications
和C:\Android\Projects\Components
。我應該如何組織包括庫在內的Android項目的源代碼管理?
對於一個項目我已經克隆從GitHub庫到Components
文件夾,假設C:\Android\Projects\Componentes\SampleLib
(該文件夾內有兩個文件夾TheLib
和TheLibExample
)。我的應用程序創建爲C:\Android\Projects\Applications\MyTestApp
。然後我通過以下these instructions將圖書館添加到應用程序中。
現在讓我們說,我想用GitHub上與開源社區分享我的應用程序。我將創建一個存儲庫並將所有內容從C:\Android\Projects\Applications\MyTestApp
推送到某個存儲庫。
如果有人想叉我的應用程序,甚至幫我,這將需要的庫編譯和運行它,這不包括在我的項目本身。 default.properties
文件將有類似於android.library.reference.1=../Components/SampleLib/TheLib
的文件,並且某人需要手動克隆該庫,並且他需要將其放在相同的相對路徑中,否則會混淆我的應用程序的源代碼管理。
我能想到的解決這一問題的唯一辦法是組織我的工作區是這樣的:
C:\Android\Projects\Applications\MyTestApp\TheApp
C:\Android\Projects\Applications\MyTestApp\TheLib
C:\Android\Projects\Componentes\SampleLib
而且我的倉庫應充滿來自C:\Android\Projects\Applications\MyTestApp\
內容。
但是,庫更新時會發生什麼?我不能簡單地拉動新的更改,我需要將它們複製到TheLib
文件夾中。在之前的文件夾組織中,這不是必需的,因爲我引用的是原始克隆存儲庫而不是副本。
那我該怎麼辦?我應該選擇第一種方式,讓任何人在我認爲合適的時候處理圖書館依賴項,或者我應該使用第二種方法,並且在原始方案從其中更改時保持兩個文件夾同步,從而爲每個人提供更多的工作。庫?
你如何解決這個問題的bitbucket? bitbucket沒有在項目中添加我的庫 – Erum