Google 개발자 콘솔의 오류보고 페이지가 정말 이상합니다.예외 java.lang.NoSuchMethodError on java.util.Deque.push
내 Android 용 응용 프로그램에서 내 응용 프로그램이 충돌하는 것 같습니다. 제공하는 예외 로그는 말한다 : 그 라이브러리를 사용하고
java.lang.NoSuchMethodError: java.util.Deque.push
at com.larvalabs.svgandroid.SVGParser$SVGHandler.<init>(SVGParser.java:869)
at com.larvalabs.svgandroid.SVGBuilder.build(SVGBuilder.java:147)
at myapp.graphic.PictureCache.getSvgPicture(PictureCache.java:59)
at myapp.graphic.PictureCache.getSvgPictureDrawable(PictureCache.java:65)
at myapp.activities.startup.ActivityStartup.setupCustomGraphic(ActivityStartup.java:92)
at myapp.activities.startup.ActivityStartup.onCreate(ActivityStartup.java:35)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1069)
...
:
http://code.google.com/p/svg-android-2/
은 단순히 외부 라이브러리를 연결되지 소스 대구를 포함.코드가 java.util.Deque.push
(NoSuchMethodError)에 실패한 것 같습니다. 그것은 내가 복사하고 붙여 넣은 소스 코드의 문제가 아니며, 그것은 런타임에 dequeue 메소드가 발견되지 않는 것 같습니다! 어떻게 가능할까요? 상상할 수 없다.
편집 :
Deque<Matrix> matrixStack = new LinkedList<Matrix>();
문제 제기 코드 :
matrixStack.push(new Matrix());
가 new Matrix()
가 push()
에 의해 허용되지 않는 값을 반환하는 것이 가능인가요을 양단 큐 정의입니다 방법?
ad22를 rev 22로 업데이트 했습니까? 그렇다면 프로젝트를 마우스 오른쪽 버튼으로 클릭하십시오. java build path 주문 내보내기 탭을 선택하십시오. 프로젝트와 안드로이드 프로젝트 모두에 대해 안드로이드 전용 라이브러리를 선택했는지 확인하십시오. 이것은 단지 제안 일뿐입니다. – Raghunandan
java.util.Deque.push가 Java.6에 도입 된 것처럼 보이며 이전 버전에서는 제공되지 않을 수 있습니다. 응용 프로그램이 실패한 장치에서 런타임 환경을 확인하는 것이 좋습니다. –
@scubadiver 그러나 대기 ...'Deque'는 Java 5에도 존재하지 않았으므로 Java 6보다 오래된 버전에서는'java.lang.NoClassDefFoundError : java.util.Deque'로 실패합니다. 아마도 Android 라이브러리는 Java 6 또는 7이지만'push' 메소드는 포함되어 있지 않습니다. – gparyani