2017-09-14 38 views
0

我對Ubuntu 16.04.3 LTS安裝uiautomatorviewer通過命令:

sudo apt-get install androidsdk-uiautomatorviewer 

然後我輸入:

uiautomatorviewer 

我看見錯誤:

Exception in thread "main" java.lang.NoSuchMethodError: com.ibm.icu.util.ULocale$Builder.build()Lcom/ibm/icu/util/ULocale; 
    at com.ibm.icu.impl.javaspi.ICULocaleServiceProvider.addULocale(ICULocaleServiceProvider.java:206) 
    at com.ibm.icu.impl.javaspi.ICULocaleServiceProvider.getLocales(ICULocaleServiceProvider.java:140) 
    at com.ibm.icu.impl.javaspi.ICULocaleServiceProvider.getAvailableLocales(ICULocaleServiceProvider.java:53) 
    at com.ibm.icu.impl.javaspi.util.CurrencyNameProviderICU.getAvailableLocales(CurrencyNameProviderICU.java:39) 
    at sun.util.locale.provider.SPILocaleProviderAdapter$CurrencyNameProviderDelegate.addImpl(SPILocaleProviderAdapter.java:485) 
    at sun.util.locale.provider.SPILocaleProviderAdapter$CurrencyNameProviderDelegate.addImpl(SPILocaleProviderAdapter.java:479) 
    at sun.util.locale.provider.SPILocaleProviderAdapter$1.run(SPILocaleProviderAdapter.java:97) 
    at sun.util.locale.provider.SPILocaleProviderAdapter$1.run(SPILocaleProviderAdapter.java:74) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at sun.util.locale.provider.SPILocaleProviderAdapter.findInstalledProvider(SPILocaleProviderAdapter.java:74) 
    at sun.util.locale.provider.AuxLocaleProviderAdapter.getLocaleServiceProvider(AuxLocaleProviderAdapter.java:70) 
    at sun.util.locale.provider.LocaleServiceProviderPool.<init>(LocaleServiceProviderPool.java:133) 
    at sun.util.locale.provider.LocaleServiceProviderPool.getPool(LocaleServiceProviderPool.java:111) 
    at java.util.Currency.getSymbol(Currency.java:506) 
    at java.text.DecimalFormatSymbols.initialize(DecimalFormatSymbols.java:648) 
    at java.text.DecimalFormatSymbols.<init>(DecimalFormatSymbols.java:113) 
    at sun.util.locale.provider.DecimalFormatSymbolsProviderImpl.getInstance(DecimalFormatSymbolsProviderImpl.java:85) 
    at java.text.DecimalFormatSymbols.getInstance(DecimalFormatSymbols.java:180) 
    at java.util.Formatter.getZero(Formatter.java:2283) 
    at java.util.Formatter.<init>(Formatter.java:1892) 
    at java.util.Formatter.<init>(Formatter.java:1914) 
    at java.lang.String.format(String.java:2940) 
    at com.android.ddmlib.AndroidDebugBridge.checkAdbVersion(AndroidDebugBridge.java:583) 
    at com.android.ddmlib.AndroidDebugBridge.<init>(AndroidDebugBridge.java:559) 
    at com.android.ddmlib.AndroidDebugBridge.createBridge(AndroidDebugBridge.java:319) 
    at com.android.uiautomator.DebugBridge.init(DebugBridge.java:68) 
    at com.android.uiautomator.UiAutomatorViewer.main(UiAutomatorViewer.java:71) 

如何解決這個異常?

回答

0

我固定的:

sudo rm -rf /usr/bin/uiautomatorviewer 

,並在文件中的/ usr/bin中粘貼/ uiautomatorviewer下面的腳本:

#!/bin/bash 
cd ~/AndroidSDK/tools/bin 
bash ./uiautomatorviewer 

哪裏​​是我的道路,其中由Android SDK安裝uiautomatorviewer放置(我的$ANDROID_HOME的值爲~/AndroidSDK)。

最後我使腳本可執行:

sudo chmod +x /usr/bin/uiautomatorviewer