A Java IDE Server for your editor. Java IDE-like features to your favourite text editor.
Some planned and implemented features:
- Server supports a network connection
Gradle
andMaven
andEclipse
project support- Run build tool task
- Compile your project
- Support annotaion processor
- Analyze java source (hooks into build)
- Code completion
- Optimize import
- Jump declaration (without source)
- Run junit test (include test runner)
- Search references
- Full-featured text search (default off)
Meghanada-Server support only emacs client (meghanada-mode)
The Meghanada architecture is almost the same as ensime
. It is client server model.
Meghanada updates any information when saving and compile the java file.
- JDK 8 or later.
If your project were maven project, It needs maven
and add mvn
command your $PATH
.
./gradlew clean goJF check shadowJar
See help.
java -jar path/to/meghanada.jar --help
usage: meghanada server
--gradle-version <arg> set use gradle version
-h,--help show help
--output <arg> output format (sexp, csv, json). default:
sexp
-p,--port <arg> set server port. default: 55555
-r,--project <arg> set project root path. default: current path
-v,--verbose show verbose message (DEBUG)
--version show version information
-vv,--traceVerbose show verbose message (TRACE)
java -jar path/to/meghanada.jar
Recommend settings jvm args.
java -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -Xverify:none -Xms256m -Dfile.encoding=UTF-8 -jar path/to/meghanada.jar
Meghanada-Server is required JDK 8 or later (not JRE). It used Compiler API.
Contributions are extremely welcome!
Please check execute the following command before contributing. then please push PR to dev
branch.
./gradlew clean goJF check
TODO
TODO
- Write
.meghanada.conf
on project root.
TODO
GPL v3, See LICENSE file.