1.bc.1 - Creación de proyectos y uso de entornos integrados de desarrollo

Objetivo

Crear proyectos de desarrollo de aplicaciones y utilizar entornos integrados de desarrollo (IDE).

1. Contenidos

1.1 Instalación del JDK (Java Development Kit)

Para programar en Java necesitamos el JDK (Java Development Kit). Incluye el compilador (javac), la máquina virtual (java) y las librerías estándar.

Vamos a usar una versión libre y de código abierto: OpenJDK.

Descarga del JDK desde OpenJDK

  1. Abre tu navegador y busca "Adoptium" (anteriormente AdoptOpenJDK) o entra en https://adoptium.net
  2. Elige la versión LTS más reciente (ejemplo: JDK 21 o JDK 17).
  3. Selecciona tu sistema operativo (Windows, Linux o macOS).
  4. Descarga el archivo .zip o .msi (recomendamos el .zip para tener control total).

Instalación manual (recomendada)

Los alumnos de ciclos formativos necesitan llevar su JDK en el pendrive. Ejemplo de instalación:


	# Creamos la carpeta en el pendrive (unidad H:). Indica la versión por si tuvieras varias:
	H:\programacion\jdk25

	# Descomprimimos el contenido de OpenJDK dentro de esa carpeta
	# Debe quedar algo así:
	H:\programacion\jdk25\bin\javac.exe
	H:\programacion\jdk25\bin\java.exe
				

Ruta recomendada: Instala siempre en un directorio corto y sin espacios, como H:\jdk21 o C:\java\jdk21. Así evitamos problemas con la línea de comandos.

Configurar el PATH (variable de entorno)

Para poder ejecutar javac y java desde cualquier carpeta, hay que añadir la carpeta bin al PATH. En clase lo haremos así:


	# Temporal (solo para esta sesión)
	set PATH=H:\programacion\jdk\bin;%PATH%

	# Para comprobar que funciona
	javac -version
	java -version
				

1.2 Primer programa: ¡Hola Mundo! desde línea de comandos

Crea el código

Usa un editor de texto sencillo (Vim, Notepad++, VS Code o incluso el bloc de notas). Guarda el archivo como HolaMundo.java.


public class HolaMundo {
    public static void main(String[] args) {
        System.out.println("¡Hola Mundo desde la línea de comandos!");
    }
}
				

Compila el programa

El compilador javac genera el archivo HolaMundo.class.


	javac HolaMundo.java
				

Ejecuta el programa

La máquina virtual java ejecuta el bytecode. ¡Ojo! No pongas la extensión .class.


	java HolaMundo
				

Si todo funciona, verás el mensaje en pantalla.

Error típico: "javac no se reconoce como un comando interno o externo".

Solución: revisa el PATH o ejecuta directamente con la ruta completa: H:\programacion\jdk25\bin\javac HolaMundo.java.

1.3 Entornos Integrados de Desarrollo (IDE)

Un IDE nos facilita la escritura de código, el autocompletado, la depuración y la ejecución. Los más populares para Java son:

  • IntelliJ IDEA (Community Edition, gratuita)
  • Eclipse (muy usado en ciclos formativos)
  • NetBeans (sencillo y oficial de Apache)
  • VS Code con extensiones de Java (ligero)

Estructura de un proyecto en un IDE

Un proyecto típico contiene:


MiProyecto/
├── fuentes/			(código fuente)
│   └── HolaMundo.java
├── compilados/			(código compilado)
└── lib/    			(librerías .jar)
				

Es habitual ver los nombres en inglés (/src, /bin o /out, etc.).

El IDE se encarga de compilar y ejecutar automáticamente. Pero es importante saber hacerlo "a mano" para entender el proceso.

2. Ejercicios

2.1 Primer proyecto con tu IDE favorito

Crea un nuevo proyecto en el IDE que elijas (Eclipse, IntelliJ, NetBeans o VS Code). Dentro del proyecto, crea una clase llamada Presentacion que muestre por pantalla:


Me llamo [tu nombre]
Estudio 1º de DAM/DAW
Me gusta la programación porque...
				

Ejecuta el programa directamente desde el IDE. Comprueba que la salida es correcta.

Opcional: Usa el depurador (debugger) del IDE para poner un punto de interrupción y ver cómo se ejecuta paso a paso.

Reto: ¿Qué versión de JVM estoy usando?

Desarrolla una aplicación Java llamada VersionJVM que muestre en pantalla la versión de la máquina virtual de Java (JVM) que se está ejecutando.

Pistas: Investiga la propiedad del sistema java.version o java.runtime.version. Puedes usar System.getProperty("java.version").

El reto completo:

  1. Escribe el código que muestre la versión del JVM.
  2. Compila y ejecuta con un JDK (por ejemplo, JDK 17).
  3. Ahora cambia el PATH para usar otro JDK diferente (por ejemplo, JDK 21 o JDK 11).
  4. Ejecuta el mismo .class sin recompilar con la nueva JVM. ¿Funciona? ¿Qué versión muestra?
  5. Pregunta: ¿Qué significa que el bytecode sea compatible con versiones anteriores?

Entrega una captura de pantalla mostrando dos ejecuciones con diferentes versiones de JVM.


// Aquí tienes el esqueleto
public class VersionJVM {
    public static void main(String[] args) {
        System.out.println("Versión de JVM: " + System.getProperty("java.version"));
        System.out.println("Runtime: " + System.getProperty("java.runtime.version"));
    }
}
				

Demuestra tu valía: ¿Eres capaz de compilar con JDK 8 y ejecutar con JDK 21? ¿Y al revés? Investiga qué significa la compatibilidad binaria en Java.

3. Bibliografía