{"id":49440168,"url":"https://github.com/mikelue/vim-maven-plugin","last_synced_at":"2026-04-29T19:35:53.390Z","repository":{"id":3212924,"uuid":"4247346","full_name":"mikelue/vim-maven-plugin","owner":"mikelue","description":"The Maven plugin for VIM","archived":false,"fork":false,"pushed_at":"2025-05-13T06:03:26.000Z","size":79,"stargazers_count":61,"open_issues_count":1,"forks_count":10,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-05-13T07:19:47.006Z","etag":null,"topics":["maven","vim"],"latest_commit_sha":null,"homepage":null,"language":"Vim Script","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"vim","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mikelue.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2012-05-07T07:36:24.000Z","updated_at":"2025-05-13T06:03:29.000Z","dependencies_parsed_at":"2025-05-13T07:29:41.721Z","dependency_job_id":null,"html_url":"https://github.com/mikelue/vim-maven-plugin","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mikelue/vim-maven-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikelue%2Fvim-maven-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikelue%2Fvim-maven-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikelue%2Fvim-maven-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikelue%2Fvim-maven-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mikelue","download_url":"https://codeload.github.com/mikelue/vim-maven-plugin/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikelue%2Fvim-maven-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32441408,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T18:12:22.909Z","status":"ssl_error","status_checked_at":"2026-04-29T18:11:33.322Z","response_time":110,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5: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":["maven","vim"],"created_at":"2026-04-29T19:35:52.629Z","updated_at":"2026-04-29T19:35:53.378Z","avatar_url":"https://github.com/mikelue.png","language":"Vim Script","funding_links":[],"categories":[],"sub_categories":[],"readme":"# vim-maven-plugin\nThis plugin provides convenient functions to Apache Maven project.\n\nSee [doc/maven.txt](doc/maven.txt) for example of mappings.\n\n## Limitations\n\n* **This plugin wouldn't read the content of `pom.xml` to setup the context of Maven project.\nSo you should setup directories of source code in your project by default.**\n\n## Main features:\n1. Detects your editing file if it is under Maven's project(by looking for pom.xml)\n1. Executes Maven as compiler with supporting of quickfix\n1. Jump files between source/test code\n1. Functions for retrieving maven path in current editing buffer\n\n## Installation:\n\n### [VimPlugin](https://github.com/junegunn/vim-plug)(Recommended)\nPut following configuration to your vim-plug block of vimrc:\n\n```vim\nPlug 'mikelue/vim-maven-plugin'\n```\n\nRestart VIM and execute `:PlugInstall`\n\n### [Vundle](https://github.com/VundleVim/Vundle.vim)\nPut following configuration to your vundle block of vimrc:\n\n```vim\nPlugin 'mikelue/vim-maven-plugin'\n```\n\nRestart VIM and execute `:PluginInstall`\n\nPlease check out the documentations of your favorite plugin.\n\n### Manually\nGet the source and copy the source into your runtime path of VIM.\nThen type `helptags ~/vimfiles/doc/` to build tags of help file.\n\nUse `help maven.txt` to open the help of this plugin.\n\n# Brief\n\n## Project environment\n\n* Setting of `'path'` option of VIM automatically, to make `:find`, `:sfind` working in your `src/`.\n* Auto-appending options for Maven by buffer-scoped: `b:maven_cli_options`.\n* Controlling changing working directory automatically by `g:maven_auto_chdir`.\n\n## Command mode\n\nBy `:Mvn \u003ccommand\u003e`, you can execute Maven command and open quickfix-window.\n\ne.g.,\n* `:Mvn compile`  Execute the 'compile' phase of Maven\n* `:Mvn! compile` Execute the 'compile' phase of Maven with opening shell window\n\n## Mappings\n\n* With `\u003cPlug\u003eMavenRunUnittest`, you can set-up your own shortcut to run test of current file.\n* With `\u003cPlugn\u003eMavenSwitchUnittestFile`, you can set-up your own shortcut to switch files between `main/java/Something.java` and `src/main/java/SomethingTest.java`.\n* Theses mappings are supported in normal mode and insertion mode.\n\nSee _\"1.7. Suggestions of keystrokes\"_ of [doc/maven.txt](doc/maven.txt) for example of mappings.\n\n## APIs(VIM functions)\n\n* With `maven#getMavenProjectRoot(buf)`, you can get the root directory(by looking for `pom.xml`) of current file.\n* With `maven#getListOfPaths(buf)`, you can get list of `/src/main/java`, `src/test/java`, etc., to get search paths of source.\n* With `maven#getCandidateClassNameOfTest(className)`, you can get candidate class name for tests.\n\t* e.g. Converts `Something` a list of names: `[\"SomethingTest\", \"SomethingTestCase\", \"SomethingIT\", \"TestSomething\"]`\n\n## Quckfix window\n\nWith setting of `'errorformat'`, quickfix can show some kinds of errors output by Maven provided by this plugin.\n\n* Error of POM.xml:\n\t```\n\tThe project idv.mikelue:sandbox-java:1.0-SNAPSHOT (D:\\Code\\sandbox-java\\pom.xml) has 1 error\n\tsandbox-java/pom.xml|10 col 8 error| Unrecognised tag: 'data' (position: START_TAG seen ...\u003c/parent\u003e\\r\\n\\r\\n\\t\u003cdata\u003e... @10:8)\n\t```\n* Failure of Unit Test(JUnit or TestNG): \u003e\n\t```\n\t-------------------------------------------------------\n\t T E S T S\n\t-------------------------------------------------------\n\tRunning idv.mikelue.RegionAndInheritancePerformanceTest\n\tConfiguring TestNG with: TestNG652Configurator\n\tTests run: 13, Failures: 3, Errors: 0, Skipped: 0, Time elapsed: 0.656 sec \u003c\u003c\u003c FAILURE!\n\t\tsrc/test/java/idv/mikelue/RegionAndInheritancePerformanceTest.java|\\\u003cdo1\\\u003e|  expected [3] but found [1]    at org.testng.Assert.fail(Assert.java:94)\n\t     at org.testng.Assert.failNotEquals(Assert.java:494)\n\t     at org.testng.Assert.assertEquals(Assert.java:123)\n\t     at org.testng.Assert.assertEquals(Assert.java:370)\n\t     at org.testng.Assert.assertEquals(Assert.java:380)\n\t     at idv.mikelue.RegionAndInheritancePerformanceTest.do1(RegionAndInheritancePerformanceTest.java:25)\n\t```\n\nSo that you can set-up your own by `CompilerSet errorformat=`.\n\n## LICENSE\n\nsee [VIM LICENSE](./LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikelue%2Fvim-maven-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmikelue%2Fvim-maven-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikelue%2Fvim-maven-plugin/lists"}