Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/05/2004, 18:05
danielGT
 
Fecha de Ingreso: noviembre-2003
Mensajes: 28
Antigüedad: 20 años, 5 meses
Puntos: 0
Ayuda por favor: no puedo encontrar los .class

Hola chicos.

Tengo un problema, de principiante, que lo he tratado de resolver de mil maneras, pero ya me estoy volviendo loco, es desesperante!! T_T

Veran, estoy haciendo un programa solo de pruebas, que pretende terminar siendo un sistema de reservas de un hotel. Estoy tratando de crear un package con 2 clases, una llamada Habitacion y otra llamada Recepcionistas, de la siguiente manera:

package Hotel;

class Habitacion
{

public static int Consul_Estado(int numero)
{
return 0;
}

public static int Reservar(int numero, String clien_id, String fecha)
{
return 0;
}

public static int Reservar(int numero)
{
return 0;
}

}

class Recepcionistas
{
public static void metodo1()
{
}

public static void metodo2()
{
}

}

el cual al compilar me genera 2 archivos .class uno llamado Habitacion.class y otro Recepcionistas.class. Ahora bien, quiero otro archivo, que me permita utilizar el package, por ejemplo, como el siguiente

import java.io.*;
import Habitacion.*;

class Hotel_Pruebas
{
public static void main(String[] args)
{
Habitacion h = new Habitacion();
System.out.println("Programa terminado");
}
}


Ahora bien, tengo entendido que al estar contenido en packages, me obliga a que los .class que cree anteriormente esten en directorios con el mismo nombre que la clase, es decir, Habitacion.class y Recepcionistas.class deben estar en directorios Habitacion y Recepcionistas.

Mi estructura de directorios es la siguiente

Hotel: Aqui esta Hotel_Prueba.java
Dentro de Hotel estan
Recepcionistas: donde esta Recepcionistas.class
Habitacion: donde esta Habitacion.class

Sin embargo al compilar, me da el siguiente error:

Hotel_Prueba.java:2: package Habitacion does not exist
import Habitacion.*;
^
Hotel_Prueba.java:8: cannot access Habitacion
bad class file: Habitacion\Habitacion.class
class file contains wrong class: Hotel.Habitacion
Please remove or make sure it appears in the correct subdirectory of the classpath.

Habitacion h = new Habitacion();

Estoy compilando con el siguiente comando:

javac -classpath Habitacion Hotel_Prueba.java

Pero ya de tanto compilar, probar, volver a probar, etc... ya me ha quedado un enredo incomprensible.

Por favor, alguien me puede ayudar diciendome como debiera ser mi estructura de directorios, que opciones de linea de comando utilizar para que me compile bien y si mis codigos fuentes estan o no bien escritos/estructurados?

Un saludo ^^ y gracias de antemano.

PD: Sospecho que quizas mi JDK este mal configurado, porque en una ocasion hice algo al pie de la letra (literalmente) de lo que explicaba en una pagina de programacion, ya que en una ocasion ni siquiera le puse Package pero me mando error igual no mas, cuando en dicha pagina decia que era imposible que la compilacion fallara, sin embargo a mi si me fallo. Si es posible me podrian decir exactamente que variables de entorno deben definirse y que valores deben contener?

Bueno, espero que no sea demasiado pedir, pero encuentro que lamentablemente la documentacion de Java hay bastante pero a la vez no explica nada, son explicaciones demasiado genericas y complicadas.

Un saludo.