我有一個運行在嵌入式設備上的Java應用程序。由於不同的設備運行不同版本的設備SDK,因此我必須針對〜5種不同的設備SDK組合進行構建。如何在編譯/運行時有條件地刪除我的應用程序的一部分?
其中一種組合不支持現有對象上的特定方法,而完全從SDK中省略另一個對象。
我在我的程序中使用了這個方法和對象,但是隻有在某個配置中,所以我想回退到不支持它的設備上的另一個配置。
我很樂意在編譯或運行時執行此回退行爲。
什麼是有條件地刪除此代碼的最簡單方法?
代碼在其他方面是相同的,因此我不希望爲兩個SDK創建兩個單獨的代碼分支。
我使用Ant腳本構建我的應用程序。
我的應用程序必須針對相當舊版本的JDK(1.1.8/1.2)進行構建。
謝謝,這很有幫助。最後一個問題的答案是我絕對必須支持Java的古老版本,因爲這就是設備製造商選擇放在設備上的原因。即使我們支持的最新設備也不支持最新的Java版本。 – 2010-11-12 01:06:25
我也可以更清楚地知道所討論的對象/方法是設備製造商SDK的一部分,而不是JDK。 JDK版本限制只是一個額外的限制。 – 2010-11-12 01:13:32
嗯......所有設備製造商都沒有升級Java平臺的事實實際上可能是一個幸事,儘管我當然不羨慕你的工作:-) – 2010-11-12 01:51:11