我討厭這麼說,但聽起來你已經解決了我所知道的最佳方法。 Salesforce打包環境可能是一個完整的噩夢。一旦你的託管包有一個前綴,除非你像你所做的那樣編寫腳本,否則真的沒有回到一個普通的包。因此,您會發現整個代碼中包含的軟件包名稱,系統將爲您添加該代碼。
我發現使用它的最佳方式是保持應用程序的「純」版本,該版本將從Ant內部安全地安裝到開發組織中。一旦你在Ant中獲得了代碼,它就可以被添加到「正常」的源代碼控制中。似乎並沒有太多的大型應用程序在Salesforce中與多個團隊成員一起構建,因爲據我所知,對包含源代碼控制的工作流沒有太多支持。他們試圖將一些發佈管理添加到開發組織配置中,該配置現在處於測試階段,但看起來並不好。
我認爲使用Salesforce Force.com遷移工具的Ant是絕大部分方法。然而,一旦你想製作一個託管軟件包,你就會被凍結在那個代碼庫中,並且用那個前綴,然後你必須從包裝系統中打包發佈(來自測試版等)本身。要刷新到沙盒(每月一次的硬限制!!),然後讓開發人員退出該沙箱並部署到單個開發組織中,然後可以定期將其合併到「組開發組織」中重新部署到沙盒(使用Force.com IDE或Ant),然後部署到生產環境中。
整個過程基本上是一個完整的災難。 Salesforce離擁有一個超級強大的平臺非常近,但很多時候感覺就像一輛沒有方向盤的超級跑車。
就靜態資源而言,您應該能夠使用Eclipse以相對簡單的方式自動執行自動操作,以便您可以在一個步驟中單獨部署這些資源。 API也應該支持它。
我曾經研究過一些相當龐大的Apex代碼庫(我認爲和希望),而且恐怕真的沒有明顯的優雅解決方案。在某些情況下,使用Ant進行部署會出現奇怪的組合,例如Eclipse等。
從其他開發環境來看,它往往令人迷惑,而且很奇怪。例如,令人費解的是,您無法輕鬆地在一個步驟中轉儲數據庫,同時跟蹤對象之間的關係,然後在一個步驟中將其「導入」另一個組織。實際上,我們必須編寫一個工具,它可以很容易地從xls文件中遍歷對象關係,加載所有數據,遞歸刪除數據等等時提取所有數據,因爲我們需要一種簡單的方法來測試組織。
順便說一句,開發組織基本上扔掉了組織。我們爲了不同的測試目的創建了數十種不同的版本和配置。
對不起,我不能給你更好的消息。在這裏,可能會有更多的古茹指導您使用優雅的方式來管理包裝,我會對您感興趣並作爲答案!如果你想表達的話,你可以在suprasphere --- --- --- gmail上給我發電子郵件! :)
8投票,0回答:) – NAVEED 2010-04-14 19:17:46