我們目前有一個應用程序,它基本上是潛在客戶的全功能演示。所有功能都在那裏。但是,我們使用通用品牌/標誌,調用我們自己的Web服務(稍後將調用客戶端Web服務時調用此服務)等。維護類似的Android項目
這是我的問題。如果我們有兩個不同的客戶端,我們希望儘可能少的重複代碼。我明白這可以通過簡單地包含一個共享的JAR來完成 - 從java的角度來看。但是,我們需要改變資源。另外,一個客戶可能不希望另一個客戶想要的某些功能。最重要的是,如果我們正在進行常規錯誤修復,我們通常會希望這些修復程序在這兩個版本的應用程序中。
我們使用Git進行版本控制,使用Maven構建項目。
我們討論過的一個選擇就是分支項目並維護單獨的版本。不過,我們必須手動合併我們希望在所有版本的應用中反映的更改。
我們討論的另一個選擇是以某種方式使用maven配置文件交換資源等。但是,如果我們需要對代碼本身做任何非膚淺的修改,這可能是一個問題。我們可能必須進入工廠和不同的實現。
有沒有人有最好的方式來處理這個建議?