Ошибка класса Def не найдена в коде Android с использованием jar-файла

Я использую простой код Android в Eclispe ADT для android, чтобы изменить входную строку. Функция обратной строки написана отдельно, и я экспортировал ее как файл jar. Затем я добавил папку jar в libs моего проекта Android. в проекте eclipse не отображается ошибка amy, но во время выполнения после ввода пользовательской строки ввода и нажатия кнопки строки эмулятор показывает сообщение «К сожалению,« Мой первый проект »остановлен»

Это мой основной класс активности андроидов

package com.example.myfirstproject;

import Reverse.ReverseSentence;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.Menu;
import android.widget.Toast;
import android.widget.EditText;
import android.widget.RadioButton;

public class MainActivity extends Activity {
private EditText text1,text2;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    text1=(EditText)findViewById(R.id.editText1);
    text2=(EditText)findViewById(R.id.editText2);

}

public void onClick(View view) {
    switch (view.getId()) {
    case R.id.button1:
      RadioButton celsiusButton = (RadioButton) findViewById(R.id.radio0);
      RadioButton fahrenheitButton = (RadioButton) findViewById(R.id.radio1);
      if (text1.getText().length() == 0) {
        Toast.makeText(this, "Please enter a valid number",
            Toast.LENGTH_LONG).show();
        return;
      }

      float inputValue = Float.parseFloat(text1.getText().toString());
      if (celsiusButton.isChecked()) {
        text1.setText(String
            .valueOf(convertFahrenheitToCelsius(inputValue)));
        celsiusButton.setChecked(false);
        fahrenheitButton.setChecked(true);
      } else {
        text1.setText(String
            .valueOf(convertCelsiusToFahrenheit(inputValue)));
        fahrenheitButton.setChecked(false);
        celsiusButton.setChecked(true);
      }
      break;
    case R.id.button2:
        String inputString=text2.getText().toString();
        if(text2.getText().length()==0){
        Toast.makeText(this, "You have enetered blank ", Toast.LENGTH_LONG).show();
        return;
        }

        try{
        //Reverse.ReverseSentence rObj=new Reverse.ReverseSentence();
        ReverseSentence rObj=new ReverseSentence();

        String outputString=new String();
        outputString=rObj.reverseString(inputString);
        text2.setText(outputString);
        }
        catch(Exception e){
            e.printStackTrace();
        }
        break;
    }
  }
// Converts to celsius
  private float convertFahrenheitToCelsius(float fahrenheit) {
    return ((fahrenheit - 32) * 5/9);
  }

 //Converts to fahrenheit
  private float convertCelsiusToFahrenheit(float celsius) {
    return ((celsius * 9)/5) + 32;
  }

  //Reverses a string

  /*public String reverseString(String input){
        String original,reverse="";
        //Scanner scanner=new Scanner(System.in);

        original=input;
        System.out.println("The input string is "+ original);

        int length=original.length();

        for(int i=length-1;i>=0;i--){
            reverse=reverse+original.charAt(i);

            }

        return reverse;     

    }*/

@Override
public boolean onCreateOptionsMenu(Menu menu) {
   //Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}

}

Файл jar, который я использую, имеет следующие компоненты.             1 папка META-INF,             2. Файл .classpath,             Файл 3.properties             4 Папка Reewerse, содержащая два файла классаPalindrome.class и
               ReverseSentence.class

Исходный код двух классов: -

Palindrome.class

package Reverse;

import java.util.*;

public class Palindrome {

public static void main(String args[]){
    System.out.println("Type a string to give input");
    Scanner scanner=new Scanner(System.in);
    String inputString=new String();
    String outputString=new String();
    inputString=scanner.nextLine();
    scanner.close();
    System.out.println("The input String is "+inputString);

    ReverseSentence r=new ReverseSentence();

    outputString=r.reverseString(inputString);

    System.out.println("The output String is "+outputString);
    if(inputString.equalsIgnoreCase(outputString)){
        System.out.println("The string is a palindrome");
    }
    else{
        System.out.println("The string is not a palindrome");
    }
        System.out.println("The program is working fine");

}

/**
 * @param args
 */


}

Класс ReverseSentence: -

package Reverse;

public class ReverseSentence {

String original,reverse="";
public ReverseSentence(){

}
public ReverseSentence(String input){
    this.original=input;

}
public String reverseString(String input){

    //Scanner scanner=new Scanner(System.in);

    original=input;
    System.out.println("The input string is "+ original);

    int length=original.length();

    for(int i=length-1;i>=0;i--){
        reverse=reverse+original.charAt(i);

        }

    return reverse;     

}



}

I am not getting the solution to fix the problem.I have tried fix the Android preferences -> compiler-> JDK compliance to 1.7 as my java code is built using JDK 1.7. But I am still getting the app crash.

Я использую Eclipse Juno EE в качестве Java IDE разработки и Eclipse java ADT в качестве платформы Android.

Это простая программа для проверки удобства использования jar-файла в android, но я получаю noClassDefFound-ошибку. Вероятно, что у меня что-то не хватает и проблема с силией, все-таки я застрял в этом.

Пожалуйста помоги....

0
nl ja de
У вас есть ответ на это? Если у вас есть, можете ли вы принять ответ снизу или оставить свой ответ ниже и впоследствии принять его?
добавлено автор Freakyuser, источник
Пожалуйста, покажите свой логарифм ...
добавлено автор Mehul Ranpara, источник

2 ответы

попробуйте этот путь ...

1.Right click on your project and go to Properties.
2.go to java build path..//which is on the 5th position on left side
3.go to Order and Export tab.
4.check(Tick Mark) on your selected jar file. and click ok.
5.Now, clean your project and Run.
0
добавлено
Я пробовал это, но он показал ту же ошибку. Есть ли какая-либо ошибка в части кода, где я вызываю метод в файле jar из моего кода Android?
добавлено автор Samrat, источник

Я думаю, у вас есть два варианта:

1- Установите ваш компилятор в 1.6 для библиотеки баннеров.

2- Или сделайте свою библиотеку баннеров фактически андроидным проектом и пометьте ее как «библиотеку» в eclipse.

Я бы пошел за 1, если ваша библиотека jar не использует какой-либо код для Android.

0
добавлено
Mobile Dev Jobs — вакансии и аналитика
Mobile Dev Jobs — вакансии и аналитика
6 187 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению iOS, Android, Xamarin и т.д. ВАЖНО: Правила публикации и правила канала: Ссылка – https://telegra.ph/Pravila-oformleniya-vakansij-i-rezyume-11-09-2

Android Developers
Android Developers
4 476 участник(ов)

Общаемся на темы, посвященным Android-разработке, SDK, Kotlin, Realm и т.д.

Android Architecture
Android Architecture
2 186 участник(ов)

Русскоязычный чат по архитектуре в андроид приложениях. Подробнее: http://telegra.ph/Android-Architecture-12-24

rus-speaking/android
rus-speaking/android
1 705 участник(ов)

Основной чат по Android разработке (вопрос-ответ). ПРАВИЛА: bit.ly/andr-rules. NEWS: bit.ly/AnrdResId ЧАТЫ: Основной: bit.ly/andr-main IDE, сборка, Git, сервисы: bit.ly/andr-tools Оффтоп: bit.ly/andr-offtop Конференции, события: bit.ly/andr-events Вакансии, найм: bit.ly/andr-job Архитектура: bit.ly/andr-patterns Rx: bit.ly/andr-rx Тестирование: bit.ly/andr-test Kotlin: bit.ly/andr-kotlin Хаmarin: bit.ly/andr-xamarin За мат, спам, агрессию, предложения о работе, оффтоп в этом канале - бан на сутки и более ☢☢☢

Android Dev Подкаст
Android Dev Подкаст
1 325 участник(ов)

Комната для обсуждения Android Dev подкаста apptractor.ru/AndroidDev/ Общее обсуждение Android: https://t.me/android_ru Остальные чаты про Android: http://t.me/devChats Наши новости https://t.me/androiddevpodcast_news

Android Guards
Android Guards
602 участник(ов)

Обсуждение любых вопросов касающихся безопасности Android. - Защита системы и приложений - Уязвимости и эксплойты - Вредоносное ПО - Копание в кишках системы и приложений (RE)

Android JOB
Android JOB
466 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению Android (full-time, part-time, remote и разовые подработки)

AndroidDev :: Разработка. It's Android time now!
AndroidDev :: Разработка. It's Android time now!
458 участник(ов)

It's Android time now! Чат разработчиков Android. Вакансии, резюме и информацию о митапах размещать можно. Публикацию скрытой и явной рекламы ваших каналов и сайтов после получения разрешения от @olegushakov

Aandroid Talks!
Aandroid Talks!
212 участник(ов)

Чат об общих вопросах по ОС Android. Чат для разработки под андроид - pro.android: https://t.me/joinchat/AAAAAEKIFKnmRT9cMebb9w

Android Rus
Android Rus
68 участник(ов)