Este proyecto contiene un conjunto de bibliotecas que implementan un analizador Java 1.0 - Java 21 con funcionalidades de análisis avanzadas.
Nuestro sitio principal está en JavaParser.org
¡Apoya este proyecto convirtiéndote en patrocinador! Conviértete en patrocinador. Tu donación ayudará a que el proyecto viva y crezca con éxito.
Javaparser utiliza OpenCollective para recaudar dinero.
¡Gracias a nuestros patrocinadores!
Los binarios del proyecto están disponibles en Maven Central.
Recomendamos encarecidamente a los usuarios que adopten Maven, Gradle u otro sistema de compilación para sus proyectos. Si no está familiarizado con ellos, le sugerimos que eche un vistazo a los proyectos de inicio rápido de Maven (javaparser-maven-sample, javasymbolsolver-maven-sample).
Simplemente agregue lo siguiente a su configuración de Maven o adáptelo a su propio sistema de gestión de dependencias.
Consulte la Guía de migración cuando actualice de 2.5.1 a 3.0.0+
experto :
< dependency >
< groupId >com.github.javaparser</ groupId >
< artifactId >javaparser-symbol-solver-core</ artifactId >
< version >3.26.2</ version >
</ dependency >
Gradle :
implementation 'com.github.javaparser:javaparser-symbol-solver-core:3.26.2'
Desde la versión 3.5.10, el proyecto JavaParser incluye JavaSymbolSolver. Mientras JavaParser genera un árbol de sintaxis abstracta, JavaSymbolSolver analiza ese AST y es capaz de encontrar la relación entre un elemento y su declaración (por ejemplo, para un nombre de variable podría ser un parámetro de un método, proporcionando información sobre su tipo, posición en el AST , etc.).
El uso de la dependencia anterior agregará JavaParser y JavaSymbolSolver a su proyecto. Si solo necesita la funcionalidad principal de analizar el código fuente de Java para recorrer y manipular el AST generado, puede reducir el texto estándar de sus proyectos al incluir solo JavaParser en su proyecto:
experto :
< dependency >
< groupId >com.github.javaparser</ groupId >
< artifactId >javaparser-core</ artifactId >
< version >3.26.2</ version >
</ dependency >
Gradle :
implementation 'com.github.javaparser:javaparser-core:3.26.2'
Desde la versión 3.6.17, el AST se puede serializar a JSON. Hay un módulo separado para esto:
experto :
< dependency >
< groupId >com.github.javaparser</ groupId >
< artifactId >javaparser-core-serialization</ artifactId >
< version >3.26.2</ version >
</ dependency >
Gradle :
implementation 'com.github.javaparser:javaparser-core-serialization:3.26.2'
Si revisó el código fuente del proyecto en GitHub, puede compilar el proyecto con maven usando:
./mvnw clean install
Si desea generar los archivos jar empaquetados a partir de los archivos fuente, ejecute el siguiente comando maven:
./mvnw package
NOTA, los archivos jar para los dos módulos se pueden encontrar en:
javaparser/javaparser-core/target/javaparser-core-<version>.jar
javaparser-symbol-solver-core/target/javaparser-symbol-solver-core-<version>.jar
Si consulta las fuentes y desea ver el proyecto en un IDE, es mejor generar primero algunos de los archivos fuente; de lo contrario, recibirá muchas quejas sobre la compilación en el IDE. ( ./mvnw clean install
ya hace esto por usted).
./mvnw javacc:javacc
Si modifica el código de los nodos AST, específicamente si agrega o elimina campos o clases de nodos, los generadores de código actualizarán una gran cantidad de código por usted. El script run_metamodel_generator.sh
reconstruirá el metamodelo, que utilizan los generadores de código que ejecuta run_core_generators.sh
Asegúrese de que javaparser-core
al menos se compile antes de ejecutarlos.
Nota : para Eclipse IDE, siga los pasos descritos en la wiki: https://github.com/javaparser/javaparser/wiki/Eclipse-Project-Setup-Guide
JavaParser está disponible bajo los términos de la licencia LGPL o la licencia Apache. Usted como usuario tiene derecho a elegir los términos bajo los cuales adoptar JavaParser.
Para obtener detalles sobre la licencia LGPL, consulte LICENSE.LGPL.
Para obtener detalles sobre la licencia de Apache, consulte LICENSE.APACHE.