{"id":25506504,"url":"https://github.com/blackducksoftware/method-use-analyzer","last_synced_at":"2025-09-03T02:32:47.235Z","repository":{"id":40376203,"uuid":"238302116","full_name":"blackducksoftware/method-use-analyzer","owner":"blackducksoftware","description":"Performs analysis on Java projects to determine external method uses","archived":false,"fork":false,"pushed_at":"2025-02-24T20:39:14.000Z","size":279,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-10T12:17:11.800Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/blackducksoftware.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGE_LOG.md","contributing":"docs/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"docs/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-02-04T20:42:22.000Z","updated_at":"2025-02-24T20:39:18.000Z","dependencies_parsed_at":"2025-04-10T11:52:04.846Z","dependency_job_id":"5f3930f8-ce34-4f41-afca-fbf37fe127d0","html_url":"https://github.com/blackducksoftware/method-use-analyzer","commit_stats":null,"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/blackducksoftware/method-use-analyzer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blackducksoftware%2Fmethod-use-analyzer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blackducksoftware%2Fmethod-use-analyzer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blackducksoftware%2Fmethod-use-analyzer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blackducksoftware%2Fmethod-use-analyzer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blackducksoftware","download_url":"https://codeload.github.com/blackducksoftware/method-use-analyzer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blackducksoftware%2Fmethod-use-analyzer/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260878328,"owners_count":23075959,"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":[],"created_at":"2025-02-19T06:58:07.871Z","updated_at":"2025-06-20T04:06:23.375Z","avatar_url":"https://github.com/blackducksoftware.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Method Use Analyzer\n\n![GitHub Actions](https://github.com/blackducksoftware/method-use-analyzer/workflows/Java%20CI/badge.svg?branch=master) [![Black Duck Security Risk](https://copilot.blackducksoftware.com/github/repos/blackducksoftware/method-use-analyzer/branches/master/badge-risk.svg)](https://copilot.blackducksoftware.com/github/repos/blackducksoftware/method-use-analyzer/branches/master) [![Changelog validated by Chronicler](https://chronicler.starchartlabs.org/images/changelog-chronicler-success.png)](https://chronicler.starchartlabs.org/) [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\nThe method use analyzer library evaluates a Java project and produces a report of the method calls made to Java code not present within the project\n\nThis library is currently in BETA, and will proceed to GA with the following guidelines:\n- BETA: Some automated testing is in place for basic functionality, greater consideration is given to incompatible API changes\n- Initial GA: Majority of functionality is tested, library will follow semantic versioning guidelines from this point in regards to API compatiblity\n\n## Use\n\nTo use this library, it must be added as a dependency reference, and then invoked within the consuming project:\n\n### Dependency Reference\n\nThis library is available in Maven Central under the GAV `com.blackducksoftware:method-analyzer-core:\u003cversion\u003e`\n\n### Analysis Execution\n\nThe primary use of the method analyzer is to find external method calls from a given set of class files, and create a report of them. This can be done via:\n\n```\nMethodUseAnalyzer analyzer = new MethodUseAnalyzer();\nPath outputReportFile = analyzer.analyze(sourceDirectoryPath, outputDirectoryPath, projectName);\n```\n\nWhere `sourceDirectoryPath` is the directory containing (either directly, or recursively) the Java `*.class` files to analyze, `outputDirectoryPath` is the directory to save the report to, and `projectName` is an optional human-readable label to associate with the analyzed files in generated reports. A custom name for the report file may be specified via the `MethodUseAnalyzer.analyze(Path, Path, String, String)` function, in place of `MethodUseAnalyzer.analyze(Path, Path, String)`\n\n### Output\n\nThe output of the method use analyzer is a report file, whose formatting is documented [here](./docs/REPORT_FORMAT.md)\n\n## Contributing\n\nInformation for how to contribute to this library can be found in [the contribution guidelines](./docs/CONTRIBUTING.md)\n\n## Reporting Vulnerabilities\n\nIf you discover a security vulnerability, contact the development team by e-mail at `oss@blackduck.com`\n\n## Legal\n\nThis library is distributed under the [Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0). The only requirement for use is inclusion of the following line within your NOTICES file:\n\n```\nmethod-use-analyzer\nCopyright 2020 Black Duck Software, Inc.\n\nThis product includes software developed at\nBlack Duck Software, Inc. (http://www.blackduck.com/).\n```\n\nThe requirement for a copy of the license being included in distributions is fulfilled by a copy of the [LICENSE](./LICENSE) file being included in constructed JAR archives\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblackducksoftware%2Fmethod-use-analyzer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblackducksoftware%2Fmethod-use-analyzer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblackducksoftware%2Fmethod-use-analyzer/lists"}