Hola perotti, un jar es un archivo ejecutable java. La creación de un jar normalmente se hace una vez tienes terminado el código de un programa para poder crear el programa en sí como un solo archivo ejecutable (y no como código). Crear el jar se suele hacer a través del entorno de programación que estés usando, sea eclipse, netbeans, bluej o cualquier otro. En bluej los pasos a dar son:
Nos vamos al menú y en Project buscamos la opción "Create jar file". Nos aparecerá una ventana donde se nos pide que indiquemos cuál es la clase con el método main o clase que da lugar a la ejecución del programa. Elegimos la clase. Se nos pregunta si se deben incluir librerías de usuario (en caso de que hayamos creado librerías nosotros mismos que sean necesarias para ejecutar el programa debemos incluirlas, si no lo hemos hecho no hay que elegir librerías). También se nos pregunta si queremos incluir el código fuente (include source). En general el código fuente no se incluye puesto que no nos interesa que lo vean terceras partes, aunque si lo que quieres es enviárselo a un amigo o profesor que quieras que pueda ver el código fuente, inclúyelo.
Una vez elegidas las opciones pulsas en continuar y eliges un sitio donde guardar el archivo jar y el nombre que le quieres poner, por ejemplo spaceInvaders si es un juego de space invaders y lo guardas.
Una vez guardado, ya tienes el archivo jar ejecutable. Para ejecutarlo simplemente tendrás que hacer doble click sobre el archivo. Ese archivo se podrá ejecutar en cualquier ordenador que tenga la máquina virtual java instalada (casi todos la tienen), y tanto en linux como windows u otros sistemas operativos.
Es posible que el jar no se ejecute con doble click ya que intervienen otros factores, como aspectos de configuración, sistema operativo, permisos, etc. Otra opción es probar a ejecutarlo desde la línea de comandos con java -jar nombre_del_fichero.jar
Los ejecutables normalmente se crean con entornos gráficos, es probable que un programa de consola no se ejecute con doble click a no ser que lo mandemos a ejecutar desde la propia consola, ya que la consola no forma parte del programa en sí sino del entorno.