Sei sulla pagina 1di 4

Error con la ejecución de un programa

java
Formular una pregunta

El problema es al ejecutar el programa, pongo en la consola cmd javac y me sale


el jdk instalado y todo, en el editor que uso geany también me aparece que la compilación tuvo
éxito.
Al darle a ejecutar con el siguiente comando:

java HolaMundo
me aparece esto:
Código:

public class HolaMundo {

public static void main(String[] args) {


System.out.println("Hola Mundo");
}
}
java consola

compartirmejorar esta pregunta


editada el 10 dic. 16 a las 1:43

Mariano

21.2k1313 medallas de oro5757 medallas de plata9292 medallas de bronce

formulada el 15 nov. 16 a las 15:04

jose

1455 medallas de bronce

 El programa que hice en java es este, no tiene ningún problema : – jose el 15 nov. 16 a las
15:05
 Agrega tu codigo a tu pregunta – sioesi el 15 nov. 16 a las 15:06
 1
@jose ¿Puedes mostrar los comandos que usas para ejecutar el programa? Tu programa funciona
bien. – Francisco Romero el 15 nov. 16 a las 15:11

 @jose No estás parado en el directorio donde se encuentra la clase compilada


(HolaMundo.class). – Paul Vargas el 15 nov. 16 a las 15:33
 ¿Estas usando java -jar (ruta-a-tu-jar) o sólo estás haciendo doble
click? – Awes0meM4n el 15 nov. 16 a las 15:34
mostrar 4 comentarios más

3 respuestas
activasmás antiguas votos

Pueden se varios problemas pero creo puede tener que ver con el classpath.

Verifica que tu IDE (en este caso es geany) tenga correctamente configuradas las opciones de
configuración. Según:

https://ericplayground.com/2015/06/07/how-to-configure-geany-to-run-java/
Geany debería configurarse algo así:

En “Build”->“Set Build Commands” define los siguientes comandos:


Compile:

“C:\Program Files\Java\jdk1.8.0_45\bin\javac” “%d\%f”

Execute:

“C:\Program Files\Java\jdk1.8.0_45\bin\java” “-classpath” “%d” “%e”


Sin embargo, si recién estás partiendo te recomiendo compilar y ejecutar desde la misma línea
de comandos. Así vas a aprender mejor, tendrás mayor control y saber que es lo que pasa
cuando debas debugear.

Prueba primero, abre tu consola y verifica la compilación y ejecución desde ahí, luego
configura las opciones de tu IDE.

C:\> cd PATH_HASTA_TU_APP
C:\PATH_HASTA_TU_APP> javac HolaMundo.java
C:\PATH_HASTA_TU_APP> dir # verifica que se haya creado el archivo HolaMundo.class
C:\PATH_HASTA_TU_APP> java HolaMundo
donde, PATH_HASTA_TU_APP es la ruta al directorio de tu aplicación. Por ejemplo:

C:\Users\jose\> cd myFirstJavaApp
C:\Users\jose\myFirstJavaApp>
o

C:\Users\jose\> cd C:\Users\jose\myFirstJavaApp
C:\Users\jose\myFirstJavaApp>
ambos casos hacen lo mismo.
compartirmejorar esta respuesta
editada el 17 nov. 16 a las 19:11

respondida el 15 nov. 16 a las 15:34

molavec

11122 medallas de bronce

 2
Si es posible, te pediría que ampliases tu respuesta para no ser tan dependiente de los enlaces.
Piensa que si esos enlaces, por la razón que sea, dejan de estar disponibles, tu respuesta no será
útil para nadie. – eferion el 15 nov. 16 a las 15:52

 Ya he realizado algunos cambios. – molavec el 15 nov. 16 a las 18:01


 @molavec gracias, pero parece ser que sigue sin ir, me da error al poner los comando de
compile y execute que me diste, y pobre solo con el execute (porque es el que falla) y me sigue
dando error, este en concreto: El nombre de archivo, el nombre de directorio o la sintaxis de la
etiqueta del volumen no son correctos. Presione una tecla para continuar... – jose el 17 nov. 16 a las
13:17
 @molavec como puedo poner lo de PATH_HASTA_TU_APP, perdona soy nuevo en
programación, como puedo encontrar la ruta ? – jose el 17 nov. 16 a las 13:21
 @jose No te preocupes. PATH_HASTA_TU_APP, debes reemplazarlo por la ruta completa
o relativa del directorio donde esta tu aplicación. Mira este articulo
sencillo: es.wikihow.com/cambiar-directorios-en-el-Command-Prompt. – molavec el 17 nov. 16 a las 19:00
mostrar 7 comentarios más

Cuando generas una clase en Java, debes compilarla antes de ejecutarla.


La JVM trabaja con una serie de librerías que componen la distribución estándar más todo
el ClassPath que le agregues.
Si el comando: java HolaMundo no lo estás ejecutando sobre la carpeta donde está el
archivo .class, vas a tener que incluirlo en el ClassPath. Si hablamos de una clase sola, la
manera más fácil es poner la ruta directa al directorio.
compartirmejorar esta respuesta
editada el 11 ene. 17 a las 4:54

ArtEze

2,3801010 medallas de oro2727 medallas de plata6161 medallas de bronce

respondida el 11 ene. 17 a las 2:39


Franco Gimenez

3922 medallas de bronce

añade un comentario
0

Prueba a lanzar tu .jar con el siguiente comando desde la consola de Windows:


java -jar C://HolaMundo.jar
Con eso suele ser suficiente para saber dónde buscar tu clase principal si dices que está bien
compilado. Si no funcionara y te sale otro mensaje añadelo a tu pregunta.

NOTA: El comando sirve si tu jar esta en C: y el archivo se llama HolaMundo.jar. Si no


deberás de cambiarlo como proceda.
compartirmejorar esta respuesta
respondida el 17 nov. 16 a las 17:31

Awes0meM4n

2,18811 medalla de oro66 medallas de plata2626 medallas de bronce

 Efectivamente, me pone "error:Unable to access jarfile C: " – jose el 17 nov. 16 a las 19:07
 ¿Cuando compilas lo haces para generar un jar ejecutable? ¿Has puesto la ruta completa
del jar? (pon en tu comentario el comando exacto que has usado para lanzarlo) – Awes0meM4n el
17 nov. 16 a las 19:11
 javac HolaMundo.java (compila) (lo hace, da un salto de linea) y despues java HolaMundo
PD: el .jar lo tengo en : C:\Program Files\Java\jdk1.8.0_111\bin – jose el 17 nov. 16 a las 19:20
 Si no me contestas exactamente a lo que te pregunto es imposible que te pueda ayudar:
1.- ¿Cuando compilas lo haces para generar un jar ejecutable? 2.- Ponme exactamente el comando
que usas para ejecutar el jar (un ejemplo sería java -jar "C:\Program
Files\Java\jdk1.8.0_111\bin\HolaMundo.jar") NOTA: Es importante usar las comillas para
que use los espacios, etc... – Awes0meM4n el 17 nov. 16 a las 19:27
 @Awe0meM4n Mmmmm creo que si pero no estoy seguro, el comando que uso es: javac
Holamundo.java y ejecutar: java HolaMundo (perdona si no contesto correctamente, como ya digo,
estoy empezando) saludos – jose el 17 nov. 16 a las 21:05
mostrar 2 comentarios más

Potrebbero piacerti anche