{"id":23762459,"url":"https://github.com/xdev-software/music-maven-plugin","last_synced_at":"2026-01-22T18:44:36.766Z","repository":{"id":268355264,"uuid":"904076297","full_name":"xdev-software/music-maven-plugin","owner":"xdev-software","description":"🎵 Plays some background music while Maven is building","archived":false,"fork":false,"pushed_at":"2026-01-19T03:28:15.000Z","size":4712,"stargazers_count":60,"open_issues_count":13,"forks_count":6,"subscribers_count":1,"default_branch":"develop","last_synced_at":"2026-01-19T12:47:13.284Z","etag":null,"topics":["fun","maven-plugin","music"],"latest_commit_sha":null,"homepage":"https://xdev.software/en/news/detail/slow-maven-build-we-got-a-solution-for-that","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/xdev-software.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"custom":["https://incompetech.com/donate.html","https://xiph.org/donate"]}},"created_at":"2024-12-16T07:58:01.000Z","updated_at":"2025-12-28T11:20:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"1af210b1-0a90-43bf-aa0e-f554c51c5201","html_url":"https://github.com/xdev-software/music-maven-plugin","commit_stats":null,"previous_names":["xdev-software/music-maven-plugin"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/xdev-software/music-maven-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xdev-software%2Fmusic-maven-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xdev-software%2Fmusic-maven-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xdev-software%2Fmusic-maven-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xdev-software%2Fmusic-maven-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xdev-software","download_url":"https://codeload.github.com/xdev-software/music-maven-plugin/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xdev-software%2Fmusic-maven-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28668305,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-22T17:07:18.858Z","status":"ssl_error","status_checked_at":"2026-01-22T17:05:02.040Z","response_time":144,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["fun","maven-plugin","music"],"created_at":"2024-12-31T21:19:44.878Z","updated_at":"2026-01-22T18:44:36.750Z","avatar_url":"https://github.com/xdev-software.png","language":"Java","funding_links":["https://incompetech.com/donate.html","https://xiph.org/donate"],"categories":[],"sub_categories":[],"readme":"[![Latest version](https://img.shields.io/maven-central/v/software.xdev/music-maven-plugin?logo=apache%20maven)](https://mvnrepository.com/artifact/software.xdev/music-maven-plugin)\n[![Build](https://img.shields.io/github/actions/workflow/status/xdev-software/music-maven-plugin/check-build.yml?branch=develop)](https://github.com/xdev-software/music-maven-plugin/actions/workflows/check-build.yml?query=branch%3Adevelop)\n\n# music-maven-plugin\n\n🎵 Plays some background music while Maven is building.\n\n## Usage\n\n### Basic\n\nThe following configuration will play some \"elevator\" music in the background as soon as Maven starts building:\n\n```xml\n\u003cplugin\u003e\n    \u003cgroupId\u003esoftware.xdev\u003c/groupId\u003e\n    \u003cartifactId\u003emusic-maven-plugin\u003c/artifactId\u003e\n    \u003cversion\u003e...\u003c/version\u003e\n    \u003c!-- You might also want to add \u003cinherited\u003efalse\u003c/inherited\u003e so not every child executes this --\u003e\n    \u003cexecutions\u003e\n        \u003cexecution\u003e\n            \u003cphase\u003evalidate\u003c/phase\u003e\n            \u003cgoals\u003e\n                \u003cgoal\u003emusic\u003c/goal\u003e\n            \u003c/goals\u003e\n        \u003c/execution\u003e\n    \u003c/executions\u003e\n\u003c/plugin\u003e\n```\n\n\u003e [!TIP]\n\u003e To avoiding being self-trolled/not accidentally blasting music in the office space while waiting for the trollees to be trolled, you can set ``-Dmusic.skip`` or a global environment variable ``MAVEN_OPTS=\"-Dmusic.skip=true\"``\n\n### Customizing the music\n\nYou can customize the music by adding other sources:\n\n```xml\n\u003cconfiguration\u003e\n    \u003csources\u003e\n        \u003csource\u003e\n            \u003curi\u003e\n                \u003curi\u003ehttps://incompetech.com/music/royalty-free/mp3-royaltyfree/Corncob.mp3\u003c/uri\u003e\n            \u003c/uri\u003e\n        \u003c/source\u003e\n        \u003csource\u003e\n            \u003c!-- Relative to project directory --\u003e\n            \u003cfile\u003e\n                \u003cfile\u003emy_cool_music.mp3\u003c/file\u003e\n            \u003c/file\u003e\n        \u003c/source\u003e\n        \u003csource\u003e\n            \u003cclasspath\u003e\n                \u003cclasspath\u003e/default/Andrew_Codeman_-_03_-_Mussels_short_version.ogg\u003c/classpath\u003e\n            \u003c/classpath\u003e\n        \u003c/source\u003e\n    \u003c/sources\u003e\n    \u003cshuffle\u003etrue\u003c/shuffle\u003e\n\u003c/configuration\u003e\n```\n\n#### Supported codecs\n\n| Codec | Container |\n| --- | --- |\n| [MP3](https://en.wikipedia.org/wiki/MP3) | ``.mp3`` |\n| [Vorbis](https://en.wikipedia.org/wiki/Vorbis) | [``.ogg``](https://en.wikipedia.org/wiki/Ogg) |\n\n\u003e [!NOTE]\n\u003e Container files can also include different codecs.\n\u003e For example ``.ogg`` can also contain ``Opus``, ``Speex``, ``FLAC``, ... which are not supported.\n\n\u003e [!TIP]\n\u003e If you want to convert to supported formats you can do so with [``ffmpeg``](https://www.ffmpeg.org/):\u003cbr/\u003e\n\u003e ``ffmpeg -i music.opus music.ogg``\n\n### Spotify\n\nYou can also play music from Spotify:\n\n```xml\n\u003cconfiguration\u003e\n    \u003csources\u003e\n        \u003csource\u003e\n            \u003cspotify\u003e\n                \u003curi\u003espotify:track:4cOdK2wGLETKBW3PvgPWqT\u003c/uri\u003e\n                \u003c!-- Alternatively you can also use a URL like --\u003e\n                \u003c!-- https://open.spotify.com/playlist/37i9dQZF1DXcBWIGoYBM5M --\u003e\n            \u003c/spotify\u003e\n        \u003c/source\u003e\n    \u003c/sources\u003e\n    \u003c!-- Required, otherwise the song is started constantly in a loop --\u003e\n    \u003crepeat\u003efalse\u003c/repeat\u003e\n\u003c/configuration\u003e\n```\n\n\u003e [!NOTE]\n\u003e Requirements/Limitation:\n\u003e * The Spotify app needs to be installed.\n\u003e * Songs/Playlist can only be started asynchronously; it's not possible to detect when a song/playlist has ended\n\u003e    * Therefore playing multiple songs/playlists in a loop is not working. You should set ``repeat`` to ``false``.\n\u003e * Playback might not always be started automatically by the Spotify app.\n\u003e * Playback is started using OS specific processes (e.g. ``cmd`` on Windows, ``osascript`` on macOS and ``dbus-send`` on Linux).\u003cbr/\u003eThis might not work with certain system setups.\n\n## Installation\n[Installation guide for the latest release](https://github.com/xdev-software/music-maven-plugin/releases/latest#Installation)\n\n## Run the demo\n\n\u003e [!WARNING]\n\u003e Might be loud!\n\n* Checkout the repo\n* Run ``mvn install``\n\n## Why?\nThis is obviously a joke/fun plugin.\u003cbr/\u003e\nYou probably shouldn't use it in production or maybe only on April 1st to annoy your colleagues :P\n\nWe got the idea during XDEV's christmas party as [rfichtner](https://github.com/rfichtner) always needs more plugins for funnier Maven presentations and was inspired by [this GraalVM issue from joshlong](https://github.com/oracle/graal/issues/5327).\n\n## Support\nIf you need support as soon as possible and you can't wait for any pull request, feel free to use [our support](https://xdev.software/en/services/support).\n\n## Contributing\nSee the [contributing guide](./CONTRIBUTING.md) for detailed instructions on how to get started with our project.\n\n## Dependencies and Licenses\nView the [license of the current project](LICENSE) or the [summary including all dependencies](https://xdev-software.github.io/music-maven-plugin/dependencies)\n\nThe license and download information for the [built-in music](./music-maven-plugin/src/main/resources/default/) can be found in [sources.txt](./music-maven-plugin/src/main/resources/default/sources.txt).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxdev-software%2Fmusic-maven-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxdev-software%2Fmusic-maven-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxdev-software%2Fmusic-maven-plugin/lists"}