{"id":16179476,"url":"https://github.com/valb3r/classanalyzer","last_synced_at":"2025-07-05T07:06:11.613Z","repository":{"id":114029371,"uuid":"109123265","full_name":"valb3r/ClassAnalyzer","owner":"valb3r","description":"Creates neo4j graph layout of classes and their relationships from a jar-application mapping","archived":false,"fork":false,"pushed_at":"2019-08-08T10:13:47.000Z","size":170,"stargazers_count":4,"open_issues_count":8,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-07T16:09:55.984Z","etag":null,"topics":["code","code-analysis","graph","java","neo4j","object-relationships"],"latest_commit_sha":null,"homepage":null,"language":"Groovy","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/valb3r.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-11-01T11:29:19.000Z","updated_at":"2022-02-13T19:28:39.000Z","dependencies_parsed_at":"2023-05-18T04:31:06.853Z","dependency_job_id":null,"html_url":"https://github.com/valb3r/ClassAnalyzer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/valb3r/ClassAnalyzer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/valb3r%2FClassAnalyzer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/valb3r%2FClassAnalyzer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/valb3r%2FClassAnalyzer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/valb3r%2FClassAnalyzer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/valb3r","download_url":"https://codeload.github.com/valb3r/ClassAnalyzer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/valb3r%2FClassAnalyzer/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263699781,"owners_count":23497963,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["code","code-analysis","graph","java","neo4j","object-relationships"],"created_at":"2024-10-10T05:28:24.525Z","updated_at":"2025-07-05T07:06:11.587Z","avatar_url":"https://github.com/valb3r.png","language":"Groovy","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ClassAnalyzer\nCreates neo4j graph layout of classes and their relationships from a jar-application mapping\n\n# Sample usage:\nImagine you have microservices project which when compiled is composed of\nmultiple jars. You want to analyze cross-application and other kinds of \nclass relationships. Project is composed of subprojects A and B, which had \ncompiled its jars into following folders:\n1. Project A:\n- /opt/projectA/lib1\n- /opt/projectA/lib2\n2. Project B:\n- /opt/projectB/libs\n\nTo analyze its relationships (in this project root folder) execute cmd:\n\n    ./gradlew analyzeJars -PappMap=\"/opt/projectA/lib1,/opt/projectA/lib2=ProjectA;/opt/projectB/libs=ProjectB\" \\\n    -PclassInclude=\"com\\..*|org\\..*\"  \\ \n    -PmethodInclude=\"com\\..*|org\\..*\" \\\n    -PdbFile=\"/home/user/project.graphb\"\n\nScript will generate class relationship data in /home/user/project.graphb\n\n**Helpful cypher queries:**\n[Are here](https://github.com/valb3r/ClassAnalyzer/blob/master/help/CYPHER.md)\n\nTODO:\nReduce memory usage by streaming class processing (JavaClass) so they won't get stored in cache","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvalb3r%2Fclassanalyzer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvalb3r%2Fclassanalyzer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvalb3r%2Fclassanalyzer/lists"}