style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

no puedo compilr un simple hola mundo en java ayuda por favor

Hola bueno pues mi problema es que no puedo ejecutar el hola mundo en la consola de comandos ms-dos de windows 7
ya que configurado la clase path de la siguiente manera conforme tengo instalado en jdk en mi pc ( imagen1.jpg) y la clase que se tiene que crear claspath (imagen2.jpg), bien ahora use el editor de texto para crear mi cogido el notepath ++, y el cogido es el siguiente:

public class HolaMundo {
public static void main(String[] args) {
System.out.println("Hola Mundo");
}
}

Este codigo lo guardo como HolaMundo.java en la carpeta
C:\Programas_Java\Hola Mundo.java
Ahora voy a la linea de comandos CMD de windows 7
segun las instrucciones primero debo de ingresar a la carpeta donde se encuentra mi archivo con la extension .java y lo ago de la siguiente manera

cd C:\Programas\Java.. doy enter y aparece ahora de la siguiente manera
C:\Programas_Java> y en esta carpeta ago lo siguiente
C:\Programas_Java> javac HolaMundo.java <<<< doy enter y en la carpeta donde tengo mi archivo con la extension
.java me genera otro archivo nuevo llamado HolaMundo.class

CREO QUE HASTA AHI ESTA TODO BIEN... pero ala hora de nuevo ejecutar en archivo en ms-dos de la siguiente forma:
C:\Programas_Java> java HolaMundo.class
ME SALE EL SIGUIENTE ERROR (imagen 3.jpg )

Ya he intentado muchas veces pero no me sale ejecutarlo ayuda por favor.. soy novato en esto

AdjuntoTamaño
imagen1.jpg60.36 KB
imagen2.jpg58.25 KB
imagen3.jpg59.5 KB

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de JaimeItlzc

Cmd

ya no pongas java HolaMundo.class

Solamente:

java HolaMundo

Saludos.

ni asi funciona

hola gracias por responder, pero ya lo intente asi tambien y me sale el mismo error

Imagen de JaimeItlzc

Por que tienes

Por que tienes Path como variable de sistema?

Compilar y interpretar

Saludos.

ya las cambie

pues mira ya cambie de variables de sistema el PATH a variables de usuario y me sigue saliendo el mismo error

Imagen de neko069

Ya intentaste dar  java

-Ya intentaste dar  java HolaMundo sin la extensión .class ??? como dice @Jaime ...
-Tu clase tiene declarado algún package?? si es así, tendrías que poner la ruta completa del package en tu ejecución ...

ya

si ya lo intente tambien asi pero sale el mismo error

Imagen de neko069

mmmm y si posteas el código

mmmm y si posteas el código de tu clase? por favor entre tags de < code> y < /code>

Imagen de Jose_Gastelum

tu error es

el archivo .java tiene que tener el mismo nombre de la clase, no pongas espacios en los nombres de las clases o pon guion bajo, los nombres de las clases empiezan con la primera letra en Mayuscula

class Hola_mundo {

public static void main(String [ ] args) {

System.out.println("Hola Mundo");

}

}

lo pones en un editor de textos y lo guardas con el nombre de

Hola_mundo.java

te vaz al cmd y compilas primero el archivo: Hola_mundo.java que creaste con la siguiente instruccion

javac Hola_mundo.java

despues lo ejecutas con

java Hola_mundo

Recomendacion es bueno empezar a programar desde consola asi apredi yo pero te recomiendo que no seas maje bajate el netbeans y utilizalo.

si asi lo tengo

@jose_gastelum si mira en el tema puse mi codigo y el nombre de mi clase coincide con mi nombre de archivo java aqui
esta de nuevo mi codigo mira:

public class HolaMundo {
public static void main(String[] args) {
System.out.println("Hola Mundo");
}
}

si yo tambien quize empezar por la consola primero antes que un IDE, y ya tengo el netbeans pero primero quize hacerlo en la consola, pero ando atorado ahi

Imagen de bferro

Así de sencillo

Haz lo siguiente:
Elimina por lo pronto la variable Classpath de las variables de entorno
Abre una nueva ventana de DOS y ejecuta tu programa.

Imagen de Shadonwk

porque no intentas usar un

porque no intentas usar un editor de código java por ejemplo JCreator es muy simple, fácil de usar, y se parece al note pad ++ pero con la ventaja de que trae la opción para correr la clase desde el IDE es el símbolo verde clásico de play..

sugerencia!!!

ummmm k tal... soy nuevo por aka y quiero aportar lo poco q se hasta ahora.
yo tambien tuve el mismo problema pero lo solucione de esta forma:

1- cuando modifique la variable de entorno PATH, copie la ruta de donde esta el jdk y la pegue seguido de la que ya tenia, separandola por un [ ; ] y al final otro [ ; ]
2- una vez con la clase ya creada con extencion .java
3- en la consola CMD te ubicas en el directorio q la guardastes y digitas [ javac nombre_de_la_clase.java ] y si no tienes errores en el codigo te creara otro archivo con extencion [ .class ]
4- para ejecutarlo solo tienes que digitar [ java nombre_de_la_clase ] sin extencion de nada solo el nombre de la clase..
NOTA: en el mismo directorio donde esta guardado el archivo...
bueno pero x si las dudas tambien te recomiendo que utilices un IDE "el Jcreator" es bueno para comenzar.... no asusta mucho jejeje....
aka te dejo un link mas detallado jeje.
http://slash.blogcindario.com/2009/08/00001-compilar-e-interpretar-progr...

El problema está en que

El problema está en que modificaste la variable de entorno classpath.

Si la dejas como estaba ( como dice bferro ) debería de funcionar.

El CLASSPATH es una variable que le dice a Java ( al java.exe en tu caso ) donde econtrar las classes. Como la modificaste las quiere encontar siempre en C:\nosequeblababla\src.zip y ahí no encuentra nada.

Lo que puedes hacer es

a) Dejar la variable como estaba ( como dice bferro )
b) Pasarle el classpath al interprete ( a java.exe ) diciendole, vas a encontrar los archivos .class aquí En el cmd de windows y en unix el directorio "aquí" se escribe con un punto ".".

Entonces debe de ser algo como:

C:\alguna\ruta\>java -cp . HolaMundo

Ese "-cp ." se lee , usando como classpath el directorio actual ( aquí )

Y listo.

Esto es importante saberlo por que eventualmente tus clases estarán en otro directorio que el actual, por ejemplo si utilizas una biblioteca externa ( llamemosle demiimaginacion.jar ) sería:

java -cp c:\lib\demiimaginacion.jar HolaConBiblioteca

En ese ejemplo la biblioteca "demiimaginacion.jar" esta en el directorio c:\lib , pero podría estar en cualquier otro lugar.

Si tus clases estan en varios archivos los separas con un punto y coma ( en UNIX / Linux con ":" )

java -cp ..\lib\a.jar;..\b.jar;c:\tusarchivos\x.jar TuPrograma

Claaaaaro, aún le puedes pasar el directorio actual:

java -cp ..\lib\a.jar;..\b.jar;c:\tusarchivos\x.jar;.  TuPrograma

Notas que hay un "." hasta el final?

Para las bibliotecas "core" o base de Java no es necesario indicar el classpath pues están "dentro" de java mismo .. ( java.util, javax.swing, java.io etc. etc ) pero otras como las frameworks de desarrollo si lo estan.

Cuando ya tienes muchas más bibliotecas es recomendable utilizar alguna otra herramienta o un IDE, pero por lo pronto felicidades por intentar aprender esto desde la linea de comandos ( que por cierto desde windows xp ya no se llama el MS-DOS, sino así, la linea de comandos e el "command prompt" )

:)

Saludos.

Imagen de bferro

Las bibliotecas core no están "dentro" de java

Las clases que acompañan a la distribución de Java no es´tan "dentro" de Java. Se manejan igual que cualquier clase. Están en archivos, en este caso en un sólo "archive". Ese "archive" para la distribución de desarrollo (JDK) de Windows la encuentras en C:\Program Files\Java\jdk1.6.0_21\jre\lib y el archivo es rt.jar,

Para la distribución JRE la encuentras en C:\Program Files\Java\jre6\lib y el archivo también es rt.jar.

En ambos casos existen otros jars con otras clases.

Lo que sucede es que classpath es una variable de sistema de Java. A partir de no recuerdo que versión, el valor de esa propiedad queda preestablecida con dos valores: el directorio corriente y ese archivo rt.jar. Si alguien modifica esos valores, suceden las cosas que te han pasado.

listo

muchas gracias @bferro funciono de la forma que mencionaste.. solo tenia que eliminar la variable classpath
y tambien gracias a los demas que ayudaron, ahora a seguir aprendiendo

@BFerro, es correcto, solo

@BFerro, es correcto, solo pretendía no confundirlo más.

Por ejemplo el rt.jar aplica solo para la JVM de Sun/Oracle, pero JRockit ( también de Oracle ), J9 la JVM de IBM, y el de Apple puede ser otro ( por ejemplo en Mac es dt.jar :P ) Enfin, el punto que mencionas es correcto.

Chau!

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">