我正在尝试创建一个简单的测试应用程序,该应用程序通过调用外部JAR的一些简单功能基本上扩展了Android Hello World教程应用程序。但是,当我运行该应用程序时,它无法从JAR中找到该类。我究竟做错了什么?android无法从外部jar中找到类
下面是JAR的整个源:
package com.mytests.pow;
public class power2 {
private double d;
public power2()
{
d = 0.0;
}
public String stp2(double dd)
{
d = dd*dd;
return String.format("%e", d);
}
}
而这里的的 “Hello World ++” 来源:
package com.myLuceneTests.namespace;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import com.mytests.pow.*;
public class AndroidSimpleSIH_EclipseActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
power2 pp = new power2();
String iout = pp.stp2(12.0);
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText(iout);
setContentView(tv);
}
}
当我运行应用程序,我得到这个在logcat中:
11-22 12:24:52.697 2963 2963 E dalvikvm: Could not find class 'com.mytests.pow.power2', referenced from method com.myLuceneTests.namespace
.AndroidSimpleSIH_EclipseActivity.onCreate
然后
11-22 12:24:52.713 2963 2963 E AndroidRuntime: java.lang.NoClassDefFoundError: com.mytests.pow.power2
我在做什么错?谢谢!
顺便说一下,我的实际目标是在Android应用程序中使用真正的JAR(而不是此玩具)。我可能有权访问该JAR的代码,并且可能能够重建它,但它是一大块Java代码,重建它时可能会遇到问题,因此我正在尝试使用预构建的JAR。
您是否将Jar添加到项目的构建路径中? – slayton
Slayton,这是我所做的: –
project-> properties-> java build path-> libraries tab->添加外部JAR。这是你所指的,还是我需要做的另一个步骤? –