{"id":15338109,"url":"https://github.com/khmarbaise/maven-buildtime-profiler","last_synced_at":"2025-04-14T22:50:55.777Z","repository":{"id":5479117,"uuid":"49420845","full_name":"khmarbaise/maven-buildtime-profiler","owner":"khmarbaise","description":"Maven Build Time Profiler","archived":false,"fork":false,"pushed_at":"2025-04-11T20:07:00.000Z","size":891,"stargazers_count":75,"open_issues_count":21,"forks_count":13,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-11T21:23:43.761Z","etag":null,"topics":["java","maven","maven-extension"],"latest_commit_sha":null,"homepage":"https://khmarbaise.github.io/maven-buildtime-profiler","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/khmarbaise.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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,"zenodo":null}},"created_at":"2016-01-11T11:12:25.000Z","updated_at":"2025-04-11T20:07:04.000Z","dependencies_parsed_at":"2025-04-11T21:22:52.314Z","dependency_job_id":"95f8aaab-449d-4fd7-9cbb-c86aad24c7d0","html_url":"https://github.com/khmarbaise/maven-buildtime-profiler","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khmarbaise%2Fmaven-buildtime-profiler","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khmarbaise%2Fmaven-buildtime-profiler/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khmarbaise%2Fmaven-buildtime-profiler/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khmarbaise%2Fmaven-buildtime-profiler/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/khmarbaise","download_url":"https://codeload.github.com/khmarbaise/maven-buildtime-profiler/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248975299,"owners_count":21192199,"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":["java","maven","maven-extension"],"created_at":"2024-10-01T10:24:15.976Z","updated_at":"2025-04-14T22:50:55.765Z","avatar_url":"https://github.com/khmarbaise.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Maven BuildTime Profiler\n\n[![Apache License, Version 2.0, January 2004](https://img.shields.io/github/license/khmarbaise/maven-buildtime-profiler.svg?label=License)](http://www.apache.org/licenses/)\n[![Maven Central](https://img.shields.io/maven-central/v/com.soebes.maven.extensions/maven-buildtime-profiler.svg?label=Maven%20Central)](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.soebes.maven.extensions%22%20a%3A%22maven-buildtime-profiler%22)\n\nOften you have the problem that in large builds, you need to find\nwhere time is consumed.\n\nThis is an [EventSpy][1] implementation which collects all the information of\nall phases and mojo executions and make a summarization output at the end of\nthe build.\n\n## Minimum Requirements\nThis extension will only work for Maven 3.3.1+ (\u003e= 0.5.0) and requires JDK8+\n\n## Configuration\nIf you like to use this extension for Maven you have to define the following `.mvn/extensions.xml` file:\n\n``` xml\n\u003cextensions xmlns=\"http://maven.apache.org/EXTENSIONS/1.1.0\"\n            xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n            xsi:schemaLocation=\"http://maven.apache.org/EXTENSIONS/1.1.0 http://maven.apache.org/xsd/core-extensions-1.1.0.xsd\"\u003e\n  \u003cextension\u003e\n    \u003cgroupId\u003ecom.soebes.maven.extensions\u003c/groupId\u003e\n    \u003cartifactId\u003emaven-buildtime-profiler\u003c/artifactId\u003e\n    \u003cversion\u003e0.5.0\u003c/version\u003e\n  \u003c/extension\u003e\n\u003c/extensions\u003e\n```\nIf you don't like to add the `.mvn/extensions.xml` to your project you can also go via command line like this:\n```\nmvn verify -Dmaven.ext.class.path=$HOME/.m2/repository/com/soebes/maven/extensions/maven-buildtime-profiles/0.5.0/maven-buildtime-profiler-0.5.0.jar\n```\n\nThe download from Maven Central will be done by Maven itself.\n\n### Deactivation\nIf you like to deactivate the extension without removing the `.mvn/extensions.xml` file this can easily achieved, \nby adding the following to your command line (system property):\n```\nmvn -Dmaven-build-time-profiler.disabled verify \n```\nThat means only the following lines will appear in your console output:\n```text\n[INFO] Maven Build Time Profiler started. (Version 0.5.0)\n[INFO] Maven Build Time Profiler deactivated.\n```\nThat will give you the explicit hint that the extension has been deactivated.\n\nHint: It is **NOT** possible to deactivate the extension via properties from your `pom.xml` file!\n\n\n## Example Output\nHere's an example of what the output will look like:\n\n```\n[INFO] ------------------------------------------------------------------------\n[INFO] --             Maven Build Time Profiler Summary                      --\n[INFO] ------------------------------------------------------------------------\n[INFO] Project discovery time:       85 ms\n[INFO] ------------------------------------------------------------------------\n[INFO] Project Build Time (reactor order):\n[INFO]\n[INFO] parse-pom:\n[INFO]          169 ms : clean\n[INFO]          457 ms : process-resources\n[INFO]          663 ms : compile\n[INFO]           14 ms : process-test-resources\n[INFO]          197 ms : test-compile\n[INFO]         1109 ms : test\n[INFO]         1105 ms : package\n[INFO]          811 ms : integration-test\n[INFO]           53 ms : verify\n[INFO] ------------------------------------------------------------------------\n[INFO] Lifecycle Phase summary:\n[INFO]\n[INFO]      169 ms : clean\n[INFO]      457 ms : process-resources\n[INFO]      663 ms : compile\n[INFO]       14 ms : process-test-resources\n[INFO]      197 ms : test-compile\n[INFO]     1109 ms : test\n[INFO]     1105 ms : package\n[INFO]      811 ms : integration-test\n[INFO]       53 ms : verify\n[INFO] ------------------------------------------------------------------------\n[INFO] Plugins in lifecycle Phases:\n[INFO]\n[INFO] clean:\n[INFO]      169 ms: org.apache.maven.plugins:maven-clean-plugin:3.0.0:clean (default-clean)\n[INFO] process-resources:\n[INFO]      457 ms: org.apache.maven.plugins:maven-resources-plugin:2.7:resources (default-resources)\n[INFO] compile:\n[INFO]      663 ms: org.apache.maven.plugins:maven-compiler-plugin:3.3:compile (default-compile)\n[INFO] process-test-resources:\n[INFO]       14 ms: org.apache.maven.plugins:maven-resources-plugin:2.7:testResources (default-testResources)\n[INFO] test-compile:\n[INFO]      197 ms: org.apache.maven.plugins:maven-compiler-plugin:3.3:testCompile (default-testCompile)\n[INFO] test:\n[INFO]     1109 ms: org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test (default-test)\n[INFO] package:\n[INFO]      871 ms: org.apache.maven.plugins:maven-assembly-plugin:2.6:single (make-executable-jar)\n[INFO]      234 ms: org.apache.maven.plugins:maven-jar-plugin:2.6:jar (default-jar)\n[INFO] integration-test:\n[INFO]      811 ms: org.apache.maven.plugins:maven-failsafe-plugin:2.18.1:integration-test (failsafe-integration-test)\n[INFO] verify:\n[INFO]       53 ms: org.apache.maven.plugins:maven-failsafe-plugin:2.18.1:verify (failsafe-verify)\n[INFO] ------------------------------------------------------------------------\n[INFO] ForkTime: 0\n```\n\nMost important might be in this relationship that you will get also information about the \ntime taken to install artifacts:\n\n```\n[INFO] ------------------------------------------------------------------------\n[INFO] Installation summary:\n[INFO]        0 ms : com.soebes.examples.j2ee:service:1.1.2-SNAPSHOT:pom\n[INFO]        1 ms : com.soebes.examples.j2ee:parent:1.1.2-SNAPSHOT:pom\n[INFO]        5 ms : com.soebes.examples.j2ee:shade:1.1.2-SNAPSHOT:test:jar\n[INFO]        1 ms : com.soebes.examples.j2ee:service-client:1.1.2-SNAPSHOT:pom\n[INFO]        0 ms : com.soebes.examples.j2ee:domain:1.1.2-SNAPSHOT:pom\n[INFO]        3 ms : com.soebes.examples.j2ee:webgui:1.1.2-SNAPSHOT:pom\n[INFO]        1 ms : com.soebes.examples.j2ee:service:1.1.2-SNAPSHOT:jar\n[INFO]        0 ms : com.soebes.examples.j2ee:service-client:1.1.2-SNAPSHOT:jar\n[INFO]        1 ms : com.soebes.examples.j2ee:domain:1.1.2-SNAPSHOT:jar\n[INFO]       10 ms : com.soebes.examples.j2ee:assembly:1.1.2-SNAPSHOT:archive:zip\n[INFO]       19 ms : com.soebes.examples.j2ee:assembly:1.1.2-SNAPSHOT:prod:jar\n[INFO]        6 ms : com.soebes.examples.j2ee:shade:1.1.2-SNAPSHOT:dev:jar\n[INFO]        6 ms : com.soebes.examples.j2ee:shade:1.1.2-SNAPSHOT:prod:jar\n[INFO]        1 ms : com.soebes.examples.j2ee:shade:1.1.2-SNAPSHOT:pom\n[INFO]        6 ms : com.soebes.examples.j2ee:assembly:1.1.2-SNAPSHOT:dev:jar\n[INFO]        1 ms : com.soebes.examples.j2ee:assembly:1.1.2-SNAPSHOT:pom\n[INFO]        0 ms : com.soebes.examples.j2ee:appasm:1.1.2-SNAPSHOT:pom\n[INFO]        2 ms : com.soebes.examples.j2ee:webgui:1.1.2-SNAPSHOT:war\n[INFO]        8 ms : com.soebes.examples.j2ee:app:1.1.2-SNAPSHOT:pom\n[INFO]        1 ms : com.soebes.examples.j2ee:shade:1.1.2-SNAPSHOT:jar\n[INFO]        3 ms : com.soebes.examples.j2ee:app:1.1.2-SNAPSHOT:ear\n[INFO] 75 ms  34,888,754 bytes. 443.633 MiB / s\n```\n\nAnd much more important are things like the time for the deployment:\n\n```\n[INFO] ------------------------------------------------------------------------\n[INFO] Deployment summary:\n[INFO]       19 ms : com.soebes.examples.j2ee:assembly:1.1.2-20160306.145402-11:pom\n[INFO]       20 ms : com.soebes.examples.j2ee:service-client:1.1.2-20160306.145401-11:jar\n[INFO]       80 ms : com.soebes.examples.j2ee:assembly:1.1.2-20160306.145402-11:prod:jar\n[INFO]       20 ms : com.soebes.examples.j2ee:shade:1.1.2-20160306.145402-11:pom\n[INFO]       19 ms : com.soebes.examples.j2ee:shade:1.1.2-20160306.145402-11:jar\n[INFO]       84 ms : com.soebes.examples.j2ee:webgui:1.1.2-20160306.145401-11:war\n[INFO]       20 ms : com.soebes.examples.j2ee:service:1.1.2-20160306.145401-11:jar\n[INFO]      192 ms : com.soebes.examples.j2ee:assembly:1.1.2-20160306.145402-11:archive:zip\n[INFO]       79 ms : com.soebes.examples.j2ee:shade:1.1.2-20160306.145402-11:prod:jar\n[INFO]       20 ms : com.soebes.examples.j2ee:webgui:1.1.2-20160306.145401-11:pom\n[INFO]       23 ms : com.soebes.examples.j2ee:service-client:1.1.2-20160306.145401-11:pom\n[INFO]       90 ms : com.soebes.examples.j2ee:shade:1.1.2-20160306.145402-11:dev:jar\n[INFO]       38 ms : com.soebes.examples.j2ee:domain:1.1.2-20160306.145401-11:jar\n[INFO]       19 ms : com.soebes.examples.j2ee:appasm:1.1.2-20160306.145402-11:pom\n[INFO]       18 ms : com.soebes.examples.j2ee:app:1.1.2-20160306.145401-11:pom\n[INFO]      103 ms : com.soebes.examples.j2ee:assembly:1.1.2-20160306.145402-11:dev:jar\n[INFO]       39 ms : com.soebes.examples.j2ee:parent:1.1.2-20160306.145401-11:pom\n[INFO]      101 ms : com.soebes.examples.j2ee:shade:1.1.2-20160306.145402-11:test:jar\n[INFO]       93 ms : com.soebes.examples.j2ee:app:1.1.2-20160306.145401-11:ear\n[INFO]       19 ms : com.soebes.examples.j2ee:service:1.1.2-20160306.145401-11:pom\n[INFO]       18 ms : com.soebes.examples.j2ee:domain:1.1.2-20160306.145401-11:pom\n[INFO] 1,114 ms  34,888,754 bytes. 29.868 MiB / s\n```\n\nIf you have ideas for improvements etc. just fill in issues in the tracking system.\n\n[1]: https://maven.apache.org/ref/3.3.1/maven-core/apidocs/org/apache/maven/eventspy/AbstractEventSpy.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhmarbaise%2Fmaven-buildtime-profiler","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkhmarbaise%2Fmaven-buildtime-profiler","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhmarbaise%2Fmaven-buildtime-profiler/lists"}