Cómo usar archivos de clase externos en un proyecto de Eclipse

Mi profesor no nos proporcionó los archivos .java para un tutorial. Mi pregunta es, ¿cómo usaría sus archivos de clase en mi proyecto de eclipse y anularía el siguiente error?

Error:

Exception in thread "main" java.lang.NoClassDefFoundError: lec/utils/InputReader at randomIt.main(randomIt.java:17) Caused by: java.lang.ClassNotFoundException: lec.utils.InputReader at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 1 more 

Aquí está mi código:

  import java.util.Random; import lec/utils.InputReader; public class randomIt { public static void main(String[] args) { Random generator = new Random(); InputReader myReader = new InputReader(); //Pick a number randomly between 1 and 10! int number = generator.nextInt(10)+1; //Ask user to guess...! System.out.println("Take a guess (1 to 10)"); if (number == myReader.readInt()){ System.out.println("You win"); } else { System.out.println("It was " + number + ", tough Luck"); } } 

Y aquí está mi estructura de carpetas:
Aleatorio /
* / bin
* / lec / utils / InputReader
* / src / randomIt.java

Nota: su archivo de clase es “InputReader.class”

He tenido una jugada con Eclipse para resolver esto. Dale una oportunidad al siguiente:

  1. Cree la siguiente estructura de directorios (su escritorio funcionará) classes / lec / utils
  2. Coloque el archivo de clase InputReader en el directorio utils.
  3. Elimine cualquier referencia que tenga a InputReader que tenga actualmente en su ruta de comstackción.
  4. Usando (haga clic con el botón derecho en el proyecto) Propiedades-> Java Build Path-> Libraries seleccione la opción ‘Agregar carpeta de clase externa’ y seleccione la carpeta ‘clases’ que creó en su escritorio y haga clic en Aceptar.
  5. Ahora, en las ‘Bibliotecas referenciadas’ en la carpeta del proyecto, debe tener una llamada ‘clases’ y una ruta de acceso de paquete debajo de la llamada ‘lec.utils’ que contiene la clase InputReader.
  6. Puedes usar esa clase usando ‘import lec.utils.InputReader’ en tu propia clase.

Espero que ayude.

En el menú de configuración del proyecto, hay un elemento de menú “Crear ruta-> Configurar ruta de comstackción”. Dentro de eso, hay una opción para agregar una “carpeta de clase externa”. Coloque todos los archivos de clase proporcionados en una carpeta y agregue esa carpeta a la ruta de comstackción.

Debes hacer los siguientes cambios.

  1. Modifique su clase randomIt para tener la siguiente línea de inclusión (sin lecs /) import utils.InputReader

  2. Modifique el nombre del archivo como rnadmIt.java (y no randomit.java). El nombre de la clase y el nombre de la fe deben ser exactamente iguales. También según la convención de Sun, la clase debe comenzar con una letra mayúscula.

  3. $ cd Random $ javac -classpath ./lec src / randomIt.java