java

propósito

para cambiar la variable JAVA_HOME

c:\paraAplicacionBase\aplicacionBase>set JAVA_HOME
JAVA_HOME=C:\Program Files\Java\jdk1.7.0_80

c:\paraAplicacionBase\aplicacionBase>set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_25

c:\paraAplicacionBase\aplicacionBase>set JAVA_HOME
JAVA_HOME=C:\Program Files\Java\jdk1.7.0_25
C:\DATOS\aplicaciones\PersonalDocente\1-accesosDirectosPersonalDocente\1-accesosDirectorProyectosPlSqlDeveloper\3-EPLST>set JAVA_HOME
JAVA_HOME=C:\Program Files\Java\jdk1.7.0_25

tutoriales

java y visual studio code

problemas con java en visual studio code

  • atención a la esquina inferior derecha donde se muestra el estado de las herramientas de lenguaje

statusMarker.png

Classpath is incomplete. Only syntax errors will be reported

  • en visual studio code dan esta explicación
  • lo soluciono abriendo eclipse sobre ese archivo lo que crea un proyecto en ese directorio y deja de salir el mensaje.
    • si el proyecto ya existe se crea como tipo java con origen en el directorio del proyecto
  • un ejemplo de inicio en el directorio C:\proyectos\java\holaMundo

  • hacer un ejemplo más elaborado con los directorio y la inclusión de librerías basado en el proyecto Exportacion

path y classpath

  • buena explicación de oracle

  • seguir con C:\proyectos\java\jdbcOracle y con el de C:\proyectos\Exportacion Personal\

  • conviene forzar la complición con java:Force compilation

  • Java:Force Java compilation (Shift+Alt+B): manually triggers compilation of the workspace

  • con el proyecto de visual utilidades he avanzado

    • ya no sale el mensaje del classpath, se compila el proyecto y se usa los paquetes
    • importante que sea proyecto java por proyecto visual
  • el directorio .settings con el archivo org.eclipse.jdt.core.prefs define el nivel de compilación y evita el error major minor en el curro

  • el archivo .classpath define:

    • donde se buscan los fuentes para la compilación
    • <classpathentry kind="src" path="src"/>
    • donde se generan las clases con Java:Force Java compilation (Shift+Alt+B)
    • <classpathentry kind="output" path="classes"/>
  • al lanzar set_java_path.bat

set JAVA_HOME=C://Program Files//Java//jdk1.7.0_25
set JAVA_BIN=%JAVA_HOME%/bin
set CLASSPATH=./classes/.;%JAVA_HOME%/jre/lib/ext;%JAVA_HOME%/jre/lib
  • se marca en el classpath donde puede encontrar ejecutables java
    • por eso java entradaDatos resuelve la clase entradaDatos que se ha compilado en el directorio classes con java:Force compilation pues esta definido en el archivo .classpath de eclipse
    • <classpathentry kind="output" path="classes"/>

no se compilan las clases con java:Force compilation

  • limpiar el directorio del workspace

  • In some occasions, deleting the Java Language Server workspace directory is helpful to go back to a clean slate

  • Generally speaking, on the different platforms, the VS Code user workspace storage area can be found under these locations :

  • Windows : %APPDATA%\Code[ - Variant]\User\workspaceStorage\

  • C:\Users\javie\AppData\Roaming\Code\User\workspaceStorage

versiones distintas de java

c:\paraAplicacionBase\aplicacionBase>ant
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/tools/ant/launch/Launcher : Unsupported major.minor version 52.0
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
        at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)

c:\paraAplicacionBase\aplicacionBase>set JAVA_HOME
JAVA_HOME=C:\Program Files\Java\jdk1.7.0_80