2016-02-05 5 views
2

Я пытаюсь использовать Terminal IDE на Lollipop 5.1.1. Использование устройства Samsung E7, мод версия Terminal IDE предоставляется кем-то на XDA здесь: http://forum.xda-developers.com/showthread.php?t=1340852&page=7Отказ от повторной инициализации при ранее неудавшейся ошибке класса при загрузке класса с помощью dalvikvm

Я попытался использовать JAVAC сценарий в том, что мода, но это дало неудовлетворенный ошибку связи, говоря, что:

$ javac 
java.lang.UnsatisfiedLinkError: org.apache.harmony.security.fortress.Services 
     at    org.apache.harmony.security.fortress.Engine.getServices(Engine.java:158) 
     at   org.apache.harmony.security.fortress.Engine.getInstance(Engine.java:137) 
     at   java.security.cert.CertificateFactory.getInstance(CertificateFactory.java:90) 
     at 
    org.apache.harmony.security.utils.JarUtils.verifySignature(JarUtils.java:83) 
     at  java.util.jar.JarVerifier.verifyCertificate(JarVerifier.java:294) 
     at  java.util.jar.JarVerifier.readCertificates(JarVerifier.java:268) 
     at  java.util.jar.JarFile.getInputStream(JarFile.java:380) 
     at  libcore.net.url.JarURLConnectionImpl.getInputStream(JarURLConnectionImpl.java:222) 
     at  java.net.URL.openStream(URL.java:470) 
     at  java.lang.ClassLoader.getResourceAsStream(ClassLoader.java:444) 
     at  java.util.ResourceBundle.handleGetBundle(ResourceBundle.java:515) 
     at  java.util.ResourceBundle.handleGetBundle(ResourceBundle.java:542) 
     at  java.util.ResourceBundle.handleGetBundle(ResourceBundle.java:542) 
     at  java.util.ResourceBundle.getBundle(ResourceBundle.java:228) 
     at  java.util.ResourceBundle.getBundle(ResourceBundle.java:139) 
     at  com.sun.tools.javac.main.JavaCompiler.version(JavaCompiler.java:112) 
     at  com.sun.tools.javac.main.JavaCompiler.version(JavaCompiler.java:97) 
     at  com.sun.tools.javac.main.Main.bugMessage(Main.java:434) 
     at  com.sun.tools.javac.main.Main.compile(Main.java:421) 
     at  com.sun.tools.javac.main.Main.compile(Main.java:308) 
     at  com.sun.tools.javac.main.Main.compile(Main.java:299) 
     at  com.sun.tools.javac.Main.compile(Main.java:82) 
     at  com.spartacusrex.spartacuside.external.javac.main(javac.java:13) 
    $

странно, что есть UnsatisfiedLinkError, потому что он не говорит, что ВМ не может найти xyz.so библиотеки или не может найти метод А. Я попытался с помощью logcat команды сразу после использования javac сценария Terminal IDE на устройстве, нечетная вещь, которую я нашел оттуда:

I/art  (6558) : rejecting re-init on previously-failed class java.lang.Class<org.apache.harmony.security.fortress.Services>

Я не мог понять, почему это произошло, Сценария Javac использует андроид dalvikvm команда загрузки

com.spartacusrex.spartacuside.external.javac

класс. Люди столкнулись с этой проблемой rejecting re-init на версии sdk 20+, но мне непонятно, почему это информационное сообщение uccurs и как его решить.

+0

Капитализация товарного знака; грамматика; раскладка. –

ответ

1

Я скопировал /system/lib/libjavacrypto.so в папку IDE ID ~/system/lib и теперь работают инструменты javac и dx. Кажется, что Google испортил вещи в/system/lib, что привело к ошибкам. Отвечая, чтобы кто-то еще мог найти это полезным.