Javacomplete
java completion daemon
Install / Use
/learn @jostillmanns/JavacompleteREADME
An autocompletion daemon for the Java programming language<a id="sec-1" name="sec-1"></a>
The completion daemon provides ide like functionality. Development is at a very early stage. The completion definitely can be improved and is likely not to work in some corner cases. Nevertheless I am already using the completion for development, so I think it's in a useable state.
The following features are currently implemented:
- code completion
- method/field/variable signature lookup
- adding import declarations
planed features are
- removing unused imports
- …
Builds<a id="sec-2" name="sec-2"></a>
available on javacomplete.tillmanns.me
the builds may contain already closed issues, I recommend building the software from source using gradle.
Setup<a id="sec-3" name="sec-3"></a>
The application currently holds dependencies on the following packages:
- <del>javaparser code.google.com/p/javaparser/</del>
- eclipse AST Parser eclipse.org/jdt/core
- javassist javassist.ortg
- tinlylog www.tinylog.org/
- junixsocket code.google.com/p/junixsocket/
- jsonp jsonp.java.net/
I recently switched to the eclipse ASTParser, which allows to complete from intact code leafs inside the ast code tree. All the dependencies, including the eclipse parser will be downloaded automatically using the maven central repository.
Junixsocket native lib<a id="sec-3-1" name="sec-3-1"></a>
You can download the library files here: junixsocket/downloads/list
Instructions on how to install can be found here: junixsocket/wiki/GettingStarted
You have to copy the .so files to the LIBRARY<sub>PATH</sub>, which is /opt/newsclub/lib-native by default. The easiest way to setup them is to use the default path.
Start the daemon<a id="sec-3-2" name="sec-3-2"></a>
In order for the import feature to work with classes living in the standard library you have to set the JAVASRC environment variable pointing at the jdk source.
Dependencies may be referenced using the JAVACOMPLETPATH variable (using a colon seperated list).
example call:
JAVASRC=/usr/lib/jvm/java-7-openjdk/src.zip \
JAVACOMPLETEPATH=build/libs/javacomplete-all-0.1.0.jar \
java -jar build/libs/javacomplete-all-0.1.0.jar
Emacs setup<a id="sec-3-3" name="sec-3-3"></a>
Related Skills
node-connect
348.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
108.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
348.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
348.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
