Я пытаюсь создать простое тестовое приложение, которое в основном расширяет учебное приложение для Android Hello World, вызывая некоторые простые функции из внешнего JAR-файла. Однако, когда я запускаю приложение, оно не может найти класс из 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
Что я делаю не так? Спасибо!
Кстати, моя настоящая цель - использовать настоящий JAR (а не этот игрушечный) в приложении для Android. Возможно, у меня есть доступ к коду для этого JAR-файла, и я могу его перестроить, но это большой кусок кода Java, и я могу столкнуться с проблемами при его перестроении, поэтому я пытаюсь использовать предварительно созданный JAR.