Estoy confundido con estos dos términos.
Además, ¿qué debo hacer para crear un archivo en la carpeta src de un proyecto Spring MVC? Cuando creo usando un objeto File, crea el archivo dentro de C: \ SpringSourceTool ... Supongo que esto es ClassPath, ¿verdad?
¿Cómo puedo obtener la applicationcontext
carpeta o raíz de la aplicación?
La ruta de clases es la forma convencional de decirle al compilador (estándar) de Java y al tiempo de ejecución de Java dónde encontrar las clases compiladas. Normalmente es una secuencia de nombres de archivos JAR y nombres de directorios. La ruta de clase utilizada por el compilador y el sistema de tiempo de ejecución no tienen que ser iguales, pero normalmente deberían serlo , especialmente para un proyecto pequeño.
Buildpath no es la terminología estándar de Java. Es el término para referirse a la forma más rica en que un IDE típico especifica la relación entre los "proyectos" que componen una aplicación. El IDE utiliza esto para averiguar la ruta de clase y la ruta de origen para compilar el código Java y la ruta de clase para ejecutarlo. El IDE también usa la ruta de compilación para descubrir cómo empaquetar su código y sus dependencias como (por ejemplo) un archivo WAR.
Por ejemplo, una ruta de construcción de Eclipse para un proyecto incluye los otros proyectos de los que depende y enumera los archivos JAR de biblioteca adicionales que el proyecto contiene o en los que se basa. También enumera los paquetes del proyecto actual de los que pueden depender los proyectos posteriores.
(Si está utilizando Maven para su proyecto, el mecanismo de ruta de compilación IDE es secundario a las dependencias declaradas en los archivos POM. Por ejemplo, al usar Eclipse con m2eclipse, la ruta de compilación se sintetiza a partir de los archivos POM).
fuente
La ruta de clases se usa en tiempo de ejecución para cargar clases y recursos compilados.
La ruta de compilación se usa en tiempo de compilación para encontrar las dependencias necesarias para compilar su proyecto.
fuente
.class
archivos (y otros recursos compilados), mientras que la ruta de compilación se usa para ubicar archivos fuente que deben compilarse?Cada proyecto Java tiene su propia ruta de compilación que especifica todas las dependencias necesarias para compilar el proyecto. Esas dependencias pueden provenir de otros proyectos Java en el espacio de trabajo, de archivos Java .jar o de carpetas que contienen archivos .class.
En el entorno CLASSPATH, debe especificar solo archivos .class (es decir, archivos jar, zip; dentro de los archivos jar, zip encontrará solo clases java) es decir, está ayudando a Java Virtual Machine (JVM) a encontrar archivos de clase Java
Aquí es donde se inició la JVM, si desea crear el archivo en otro lugar, use la ruta relativa desde aquí.
Vea esto y esto para más información.
fuente
Me gustaría agregar a la respuesta de Andreas_D para explicar que el IDE / compilador requiere la ruta de compilación para ubicar paquetes y clases externos utilizados por su código. A veces nos referimos a estos como "dependencias" .
NB: Estos paquetes externos pueden estar empaquetados dentro de un archivo .jar comprimido o, de hecho, puede haber varios archivos jar empaquetados dentro de una 'biblioteca' . Una biblioteca o un grupo de bibliotecas a menudo constituyen un 'marco' .
Si su código requiere código escrito por otros, puede importarlos a su clase usando el
import
comando. Sin embargo, este comando por sí solo es insuficiente ya que el compilador o IDE necesita saber dónde se encuentran esas clases. Especifica esto en la ruta de construcción .los
classpath
otro lado, le dice a la JVM que ejecuta su aplicación dónde encontrar las dependencias durante la ejecución real de su código.También para tener en cuenta: Classpath es para uso de la JVM.
Buildpath es para uso del compilador IDE / y es un medio para construir classpath a partir de su entorno de desarrollo. Cuando configura su ruta de compilación a través de su IDE, también está configurando un archivo oculto en su proyecto llamado .classpath. Se utiliza para proporcionar la ruta de clase a la JVM en la implementación.
fuente
Classpath ( de Wikipedia ):
En pocas palabras, mientras su programa se está ejecutando, la JVM carga las clases solo según sea necesario. Cuando se necesita una clase, la JVM dependerá de la ruta de clase para saber desde dónde cargar el código de bytes (es decir:
.class
archivos).La ruta de compilación , por otro lado, generalmente la usa un IDE, como Eclipse, para saber dónde buscar bibliotecas adicionales que se requieren para compilar el código fuente de un proyecto. La ruta de compilación no se usa durante el tiempo de ejecución.
fuente