我在一個庫項目(LIB)中有一些Java代碼(適合Android編譯),我想在另一個Android項目(A)中使用它。Android - Junit - 經測試的項目使用外部Jar
由於LIB的代碼不太可能改變,我選擇將它作爲jar添加到A.它工作正常。
我有另一個項目是一個Android儀器項目,測試第一個Android項目(B)。
所以我們現在擁有的是一個包括LIB作爲外部罐子,B測試A.
當我想從用LIB B碼訪問的問題開始。 從我看到的情況來看,除非將LIB作爲外部jar添加到B,否則它拒絕編譯(也就是說,它無法訪問A中包含的LIB jar中的代碼)。
我不願意LIB添加爲外部罐子B,因爲:
java.lang.IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation
我發現Mike's question: 1.感覺不對,和 2.當運行測試它與失敗,但他的解決方案只包括使用ant腳本進行編譯,而我目前更傾向於使用Eclipse IDE來執行此項目。
任何想法我該如何解決這個問題?
通過以下[本博客文章]解決(http://dtmilano.blogspot.com/2009/12/android-testing-external-libraries.html)。看起來我應該從A出口LIB,使其可以通過B. – 2010-10-12 12:21:38
獲得幫助。我從主項目中導出了Android依賴項(該jar在libs文件夾中,因此無法直接導出),並且在測試項目中也必須檢查主項目。現在它可以工作。 – Ixx 2012-05-06 18:57:50