NetBeans en Linux Mint 20: cuando “empezar a programar” no es tan simple

Actualmente, para desarrollo Java EE, estoy trabajando sin problemas con el siguiente stack:

  • Eclipse Enterprise

  • WildFly

  • PostgreSQL

  • Hibernate

  • Maven

  • Git

  • Java (un surtido importante de versiones, según el proyecto)

En mi Linux Mint tengo disponibles varias versiones de Java, algo bastante común cuando se trabaja con proyectos viejos y nuevos a la vez:

sudo update-alternatives --config java

Salida:

Existen 3 opciones para la alternativa java (que provee /usr/bin/java).

  Selección   Ruta                                            Prioridad  Estado
------------------------------------------------------------
* 0            /usr/lib/jvm/java-17-openjdk-amd64/bin/java      1711      modo automático
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      modo manual
  2            /usr/lib/jvm/java-17-openjdk-amd64/bin/java      1711      modo manual
  3            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      modo manual

Pulse <Intro> para mantener el valor por omisión [*] o pulse un número de selección: 

Todo funcionando correctamente sobre Linux Mint 20 (Ubuntu 20.04 base).

Hasta acá, ningún drama.


El objetivo: revivir un proyecto viejo

Quise revivir un proyecto web antiguo llamado Espotify Web, que estaba corriendo en una máquina virtual con Windows 7, usando:

  • NetBeans

  • Tomcat

  • MySQL

  • Java EE “clásico”

Para eso decidí instalar NetBeans en mi Linux Mint 20 y probar el proyecto localmente.
Algo que, en teoría, debería haber sido rápido y sencillo.

Spoiler: no lo fue.


Problema 1: ni siquiera un Hello World funcionaba

Después de instalar NetBeans desde los repositorios de Mint, al intentar crear un proyecto Java simple y ejecutar un HelloWorld, aparecían errores como:

cannot access java.lang
Fatal Error: Unable to find package java.lang

O incluso:

Class does not have a main method
Uncompilable source code

La causa

NetBeans no tenía correctamente configurado el JDK como Java Platform, o estaba apuntando a un runtime incorrecto.
Incluso indicando el path correcto de Java, simplemente no funcionaba, algo que sinceramente no podía creer.

Además, el cache del IDE parecía estar en un estado inconsistente, lo que terminaba de romper cualquier intento de ejecución.

Sin más vueltas, la solución fue:

  1. Eliminar NetBeans instalado desde los repos

  2. Borrar completamente cache y configuración:

rm -rf ~/.netbeans
rm -rf ~/.cache/netbeans
  1. Reinstalar NetBeans limpio

Después de eso, Java volvió a funcionar correctamente y el HelloWorld finalmente compiló y ejecutó.
Bien ahí… primer obstáculo superado. !!


Problema 2: NetBeans “funciona”… pero no tiene Maven

Con Java funcionando, el siguiente paso fue probar algo más real:
el tutorial oficial de Oracle sobre JAX-RS con REST.

Tutorial JAX-RS

File → New Project

solo aparecían estas categorías:

  • Java

  • NetBeans Modules

  • Samples / Java

No había Maven
❌ No había proyectos Web
❌ No había JAX-RS

En ese punto ya empezaba a mirar el reloj: el tiempo invertido era mucho mayor al que había estimado para hacer un tutorial simple, solo para repasar conceptos.

Pero bueno… ya que estamos en el baile, vamos a bailar 💃
Decidí investigar por qué NetBeans no tenía Maven.


El verdadero problema: NetBeans de los repos de Mint

El NetBeans que viene en los repositorios de Linux Mint / Ubuntu:

  • Es muy viejo

  • Viene recortado

  • NO incluye soporte Maven

  • No sirve para Java EE / Jakarta EE moderno

Por eso:

  • No pude seguir el tutorial de Oracle en Netbeans

  • No se pueden importar proyectos Maven


Entonces

Comentarles mi suerte con NetBeans en Linux Mint 20.

¿Este incidente amerita actualizar el sistema operativo?
Probablemente no… pero sí obliga a replantear la herramienta.

Tal vez, cuando tenga más tiempo y voluntad de importar el proyecto, pruebe descargando un NetBeans más nuevo y oficial, compatible con Mint 20, para intentar importar Espotify Web, un proyecto de mis épocas de facultad.

Y lo que ya sabemos todos !

Programar no es lo más difícil, a veces…
sino tener lista la herramienta para empezar a programar.


¿Y a vos te anduvo?
¿Tuviste los mismos problemas te funcionó sin vueltas?

Si querés compartir tu experiencia, dudas o simplemente comentar cómo lo resolviste, escribime a: valerkasystem@protonmail.com

— Valerka
Montevideo, Uruguay