[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-4333":3},{"id":4,"name":5,"fullName":6,"owner":5,"repo":5,"description":7,"homepage":8,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":15,"forks30d":15,"starsTrendScore":19,"compositeScore":20,"rankGlobal":9,"rankLanguage":9,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":22,"topics":25,"createdAt":9,"pushedAt":9,"updatedAt":36,"readmeContent":37,"aiSummary":38,"trendingCount":15,"starSnapshotCount":15,"syncStatus":39,"lastSyncTime":40,"discoverSource":41},4333,"javaparser","javaparser\u002Fjavaparser","Java 1-25 Parser and Abstract Syntax Tree for Java with advanced analysis functionalities.","https:\u002F\u002Fjavaparser.org",null,"Java",6108,1235,135,415,0,3,4,21,9,40.28,"Other",false,"master",true,[26,27,28,29,30,31,32,5,33,34,35],"abstract-syntax-tree","ast","code-analysis","code-generation","code-generator","java","javadoc","javasymbolsolver","parser","syntax-tree","2026-06-12 02:01:02","\n\u003C!--\n    Note that edits to this readme should be done via `docs\u002Freadme.md`.\n    Modifying this file directly within the root directory risks it being overwritten. \n-->\n\n# JavaParser\n\n[![Maven Central](https:\u002F\u002Fimg.shields.io\u002Fmaven-central\u002Fv\u002Fcom.github.javaparser\u002Fjavaparser-core.svg)](http:\u002F\u002Fsearch.maven.org\u002F#search%7Cgav%7C1%7Cg%3A%22com.github.javaparser%22%20AND%20a%3A%22javaparser-core%22)\n[![Build Status](https:\u002F\u002Fgithub.com\u002Fjavaparser\u002Fjavaparser\u002Factions\u002Fworkflows\u002Fmaven_tests.yml\u002Fbadge.svg?branch=master)](https:\u002F\u002Fgithub.com\u002Fjavaparser\u002Fjavaparser\u002Factions\u002Fworkflows\u002Fmaven_tests.yml)\n[![Coverage Status](https:\u002F\u002Fcodecov.io\u002Fgh\u002Fjavaparser\u002Fjavaparser\u002Fbranch\u002Fmaster\u002Fgraphs\u002Fbadge.svg?branch=master)](https:\u002F\u002Fapp.codecov.io\u002Fgh\u002Fjavaparser\u002Fjavaparser?branch=master)\n[![Join the chat at https:\u002F\u002Fgitter.im\u002Fjavaparser\u002Fjavaparser](https:\u002F\u002Fbadges.gitter.im\u002FJoin%20Chat.svg)](https:\u002F\u002Fgitter.im\u002Fjavaparser\u002Fjavaparser?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)\n[![License LGPL-3\u002FApache-2.0](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-LGPL--3%2FApache--2.0-blue.svg)](LICENSE)\n[![DOI](https:\u002F\u002Fzenodo.org\u002Fbadge\u002FDOI\u002F10.5281\u002Fzenodo.2667378.svg)](https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.2667378)\n\n\nThis project contains a set of libraries implementing a Java 1.0 - Java 25 Parser with advanced analysis functionalities.\n\nOur main site is at [JavaParser.org](http:\u002F\u002Fjavaparser.org)\n\n## Sponsors\n\nSupport this project by becoming a sponsor! [Become a sponsor](https:\u002F\u002Fopencollective.com\u002Fjavaparser). Your donation will help the project live and grow successfully.\n\nJavaparser uses [OpenCollective](https:\u002F\u002Fopencollective.com\u002Fjavaparser) to gather money.\n\n**Thank you to our sponsors!**\n\n\n## Setup\n\nThe project binaries are available in Maven Central.\n\nWe strongly advise users to adopt Maven, Gradle or another build system for their projects.\nIf you are not familiar with them we suggest taking a look at the maven quickstart projects\n([javaparser-maven-sample](https:\u002F\u002Fgithub.com\u002Fjavaparser\u002Fjavaparser-maven-sample),\n[javasymbolsolver-maven-sample](https:\u002F\u002Fgithub.com\u002Fjavaparser\u002Fjavasymbolsolver-maven-sample)).\n\nJust add the following to your maven configuration or tailor to your own dependency management system.\n\n[Please refer to the Migration Guide when upgrading from 2.5.1 to 3.0.0+](https:\u002F\u002Fgithub.com\u002Fjavaparser\u002Fjavaparser\u002Fwiki\u002FMigration-Guide)\n\n**Maven**:\n\n```xml\n\u003Cdependency>\n    \u003CgroupId>com.github.javaparser\u003C\u002FgroupId>\n    \u003CartifactId>javaparser-symbol-solver-core\u003C\u002FartifactId>\n    \u003Cversion>3.28.1\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n\n**Gradle**:\n\n```\nimplementation 'com.github.javaparser:javaparser-symbol-solver-core:3.28.1'\n```\n\nSince Version 3.5.10, the JavaParser project includes the JavaSymbolSolver.\nWhile JavaParser generates an Abstract Syntax Tree, JavaSymbolSolver analyzes that AST and is able to find\nthe relation between an element and its declaration (e.g. for a variable name it could be a parameter of a method, providing information about its type, position in the AST, ect).\n\nUsing the dependency above will add both JavaParser and JavaSymbolSolver to your project. If you only need the core functionality of parsing Java source code in order to traverse and manipulate the generated AST, you can reduce your projects boilerplate by only including JavaParser to your project:\n\n**Maven**:\n\n```xml\n\u003Cdependency>\n    \u003CgroupId>com.github.javaparser\u003C\u002FgroupId>\n    \u003CartifactId>javaparser-core\u003C\u002FartifactId>\n    \u003Cversion>3.28.1\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n\n**Gradle**:\n\n```\nimplementation 'com.github.javaparser:javaparser-core:3.28.1'\n```\n\nSince version 3.6.17 the AST can be serialized to JSON.\nThere is a separate module for this:\n\n**Maven**:\n\n```xml\n\u003Cdependency>\n    \u003CgroupId>com.github.javaparser\u003C\u002FgroupId>\n    \u003CartifactId>javaparser-core-serialization\u003C\u002FartifactId>\n    \u003Cversion>3.28.1\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n\n**Gradle**:\n\n```\nimplementation 'com.github.javaparser:javaparser-core-serialization:3.28.1'\n```\n\n## How To Compile Sources\n\nIf you checked out the project's source code from GitHub, you can build the project with maven using:\n```\n.\u002Fmvnw clean install\n```\n\nIf you want to generate the packaged jar files from the source files, you run the following maven command:\n```\n.\u002Fmvnw package\n```\n\n**NOTE** the jar files for the two modules can be found in:\n- `javaparser\u002Fjavaparser-core\u002Ftarget\u002Fjavaparser-core-\\\u003Cversion\\>.jar`\n- `javaparser-symbol-solver-core\u002Ftarget\u002Fjavaparser-symbol-solver-core-\\\u003Cversion\\>.jar`\n\nIf you checkout the sources and want to view the project in an IDE, it is best to first generate some of the source files;\notherwise you will get many compilation complaints in the IDE. (`.\u002Fmvnw clean install` already does this for you.)\n\n```\n.\u002Fmvnw javacc:javacc\n```\n\nIf you modify the code of the AST nodes, specifically if you add or remove fields or node classes,\nthe code generators will update a lot of code for you.\nThe `run_metamodel_generator.sh` script will rebuild the metamodel,\nwhich is used by the code generators which are run by `run_core_generators.sh`\nMake sure that `javaparser-core` at least compiles before you run these.\n\n**Note**: for Eclipse IDE follow the steps described in the wiki: https:\u002F\u002Fgithub.com\u002Fjavaparser\u002Fjavaparser\u002Fwiki\u002FEclipse-Project-Setup-Guide\n\n## More information\n\n#### [JavaParser.org](https:\u002F\u002Fjavaparser.org) is the main information site or see the wiki page https:\u002F\u002Fgithub.com\u002Fjavaparser\u002Fjavaparser\u002Fwiki.\n\n## License\n\nJavaParser is available either under the terms of the LGPL License or the Apache License. You as the user are entitled to choose the terms under which adopt JavaParser.\n\nFor details about the LGPL License please refer to [LICENSE.LGPL](https:\u002F\u002Fgithub.com\u002Fjavaparser\u002Fjavaparser\u002Fblob\u002Fmaster\u002FLICENSE.LGPL).\n\nFor details about the Apache License please refer to [LICENSE.APACHE](https:\u002F\u002Fgithub.com\u002Fjavaparser\u002Fjavaparser\u002Fblob\u002Fmaster\u002FLICENSE.APACHE).\n","JavaParser 是一个用于解析 Java 1.0 到 Java 25 代码并生成抽象语法树（AST）的库，支持高级代码分析功能。其核心功能包括对 Java 代码的解析、AST 的生成以及通过 JavaSymbolSolver 进行符号解析，能够识别变量声明及其类型等信息。该项目适用于需要进行 Java 代码静态分析、代码生成或重构的场景，如开发工具、IDE 插件及自动化测试框架等。JavaParser 以 Maven 或 Gradle 作为依赖管理工具，易于集成到现有项目中。",2,"2026-06-11 02:59:43","top_language"]