0

私は現在、Android システムの調査とテストの一環として、SDK で Android ライブラリ (具体的には android.database.sqlite) をカバーしようとしています。Emma を報道用のツールとして使用することを期待して、Emma の使用に関するこのガイドに従っています。ただし、このガイドに従ってサンプル プログラムを実行するだけでは、うまく動作しないようです。走れる

java -cp out Main

いいけど走ろうとした瞬間

java emmarun -cp out Main

次のエラーが表示されます。

Exception in thread "main" java.lang.NoClassDefFoundError: emmarun
Caused by: java.lang.ClassNotFoundException: emmarun
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: emmarun.  Program will exit.

たぶん、これはエマの問題に関する私の経験不足にすぎませんが、どうすればよいか説明してもらえますか? ちなみに、私は現在 emma.jar ファイルを /usr/lib/jvm/java-1.6.0-sun-1.6.0.33.x86_64/jre/lib/ に保存しています (ガイドでは jre/lib に置くように言われました) /ext/、しかしそれはうまくいかなかったので、私の職場のサポートは代わりに lib/ に入れました)。

4

1 に答える 1

0

間違ったemma.jarを使用している可能性があります

Android のビルド システムには 2 つのemma.jarがあります。

1 つはホスト用( PC で実行) で、もう1 つはターゲット( Phone で実行) 用です。

問題は、ターゲットを使用してemmarunコマンドを実行することです。


/system/framework/emma.jar の下に構築されたものは電話用です。

ビルドシステム /external/emma/lib/emma.jar にあるものは、コマンドを実行するためのものです。

于 2013-06-03T01:13:33.353 に答える