Error: JAVA_HOME no está definido correctamente ejecutando maven

Instalé java y establecí la ruta al entorno y cuando ejecuto echo $JAVA_HOME obtengo el siguiente resultado:

 /usr/lib/jvm/java-7-oracle/jre/bin/java 

También instalé apache-maven y environment archivo de environment modificado y ahora se ve así:

 JAVA_HOME="/usr/lib/jvm/java-7-oracle/jre/bin/java" M2_HOME=/usr/local/apache-maven/apache-maven-3.0.5 M2=$M2_HOME/bin MAVEN_OPTS="-Xms256m -Xmx512m" PATH=$M2:$PATH 

Pero cuando ejecuto mvn --version recibo una advertencia:

 Error: JAVA_HOME is not defined correctly. We cannot execute /usr/lib/jvm/java-7-oracle/jre/bin/java/bin/java 

No se puede averiguar por qué se repite al final /bin/java/bin/java

Suponiendo que usa bash shell e instaló Java con el instalador de Oracle, podría agregar lo siguiente a .bash_profile

 export JAVA_HOME=$(/usr/libexec/java_home) export PATH=$JAVA_HOME/jre/bin:$PATH 

Esto elegiría el JAVA_HOME correcto como lo define el instalador de Oracle y lo establecerá primero en $PATH asegurándose de que se encuentre.

Además, no es necesario cambiarlo más tarde al actualizar Java.

EDITAR

Según los comentarios:

Haciéndolo persistente después de un reinicio

Simplemente agregue esas líneas en el archivo de configuración del shell. (Suponiendo que sea bash )

Ej: .bashrc , .bash_profile o .profile (para ubuntu)

Usar una instalación personalizada de Java

Establezca JAVA_HOME en la carpeta raíz de la ruta de instalación de Java personalizada sin $() .

JAVA_HOME=/opt/java/openjdk : JAVA_HOME=/opt/java/openjdk

JAVA_HOME debería ser /usr/lib/jvm/java-7-oracle/jre/ .