2016-08-24 38 views
0

由於我導入並配置了Upsight(http://www.upsight.com/)插件,因此我嘗試爲Android構建Unity項目時遇到了異常。日誌消息被截斷,所以我看不到衝突來自哪裏(見下文)。「CommandInvokationFailure:無法將類轉換爲dex格式。」與Unity Upsight Plugin Build for Android

如果有人知道如何找到這個錯誤的確切來源,那將是非常棒的。也許截斷可以以某種方式停用,或者這個問題在使用其他插件時對於Upsight而言是已知的。我使用了Unity Purchasing,Mobile Social和Fyber等更多插件。已知這些中的一個與Upsight結合會導致問題!?

我明白任何想法或解決方法。我需要讓插件運行! 提前謝謝!

derGarv

CommandInvokationFailure:無法對類轉換成DEX格式。有關詳細信息,請參閱控制檯的 。 C:/ Program Files/Java/jdk1.8.0_101 \ bin \ java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir =「C:/ Users/ggurbat/AppData/Local/Android/sdk \ tools」 -Dfile.encoding = UTF8 -jar 「C:\程序 文件\統一\編輯\數據\ PlaybackEngines \ AndroidPlayer /工具\ sdktools.jar」 -

stderr的[ 警告:忽略InnerClasses屬性爲匿名內部類 (com.fyber.a)不包含與 關聯的EnclosingMethod屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.banners.b)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.banners.BannerSize $ 1)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略匿名內部類的InnerClasses屬性 (com.fyber.ads.banners。a)沒有附帶EnclosingMethod屬性的 。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.banners.c)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.banners.d)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.interstitials.a.b)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.interstitials.a.c)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.ofw.a)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.a)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.a.d)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.a.f)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.a.g)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.a.h)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略匿名內部類的InnerClasses屬性 (com.fyber.ads.videos.a。i)沒有附帶EnclosingMethod屬性的 。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.a.j)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.a.m)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.a.n)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.a.o)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.a.e)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.c)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.e)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.f)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.g)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.h)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略匿名內部類的InnerClasses屬性 (com.fyber.ads.videos。i)沒有附帶EnclosingMethod屬性的 。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.k)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略InnerClasses屬性的一個匿名內部類 (com.fyber.ads.videos.l)沒有與一個 關聯的EnclosingMethod屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略不包含 關聯的EnclosingMethod屬性的匿名內部類 (com.fyber.ads.videos.b)的InnerClasses屬性。這個類可能是由一個 編譯器生成的,它不針對現代.class文件格式。建議的 解決方案是使用最新的編譯器 並且不指定任何「-target」類型選項,從源代碼重新編譯該類。 忽略 這個警告的後果是,對這個類的反射操作將錯誤地 指示它是而不是的一個內部類。 警告:忽略InnerClasses爲一個匿名內部類 (com.fyber.ads.videos

+0

這不是主流[命令Invokation失敗(http://stackoverflow.com/a/38980377/4366237),我會建議你刪除插件完全重新導入它。 –

回答

1

我還有兩個星期前遇到了同樣的問題屬性此錯誤通常是當你已經導入了有一個以上的插件相同的「.jar」文件在資產文件夾中

我建議你在搜索欄中輸入「* .jar」在項目文件夾中找到重複的「.jar」,然後找到重複文件並刪除其中的一個。

就我而言,我導入了兩個不同版本的Google VR sdks,所以他們有相同的.jar文件.... 當我搜索它們時,我在搜索結果中找到了兩次「example.jar」。並刪除其中一個。它解決了這個問題。

+0

是的,這有助於如果文件命名相似。 – derGarv

0

如果有人遇到類似的問題:在「C:\ Users \ USERNAME \ AppData \ Local \ Unity \ Editor」(在Windows上)中找到Editor.log文件。這包含完整的日誌消息,包括導致衝突的類名。然後您可以搜索所有* .jar和*。使用諸如「Windows Grep」之類的工具在資產文件夾中爲這些類名稱添加aar文件。 這可以讓你找到文件,你可能會刪除這些文件。一定要做一個備份。重複這些步驟直到錯誤消息不再出現。 如果刪除導致其他問題,您可以編輯它們(打開7zip或類似的.jar文件)並刪除特定的類。

希望這可以幫助別人!

0

我能夠通過刪除以下文件來解決此問題,因爲它們是其他版本10.0.1中唯一的8.4.0版本。

資產/插件/ Android的/ play.services的廣告,8.4.0.aar

資產/插件/ Android的/播放服務-GCM-8.4.0.aar

資產/插件/安卓/支,v4-24.0.0.aar

資產/ FacebookSDK /插件/ Android的/ lib目錄/支撐v4-23.2.1.aar

注: 我解決Android版本和更新所有播放服務都使用最新的以下簡稱。

資產 - >播放器服務處理程序 - > VersionHandler - >更新

相關問題