Skip to content

feat(lsp): integrate Java LSP into EditorView#50

Open
ori0o0p wants to merge 118 commits intomainfrom
feature/java-lsp-poc
Open

feat(lsp): integrate Java LSP into EditorView#50
ori0o0p wants to merge 118 commits intomainfrom
feature/java-lsp-poc

Conversation

@ori0o0p
Copy link
Member

@ori0o0p ori0o0p commented Feb 2, 2026

Context

  • Java 파일에서 LSP IntelliSense 동작하도록 통합

Changes

  • MonacoLSPWebView 추가 (WebSocket LSP 연동)
  • EditorView: Java 파일일 때 LSP 버전 사용
  • LSP 연결 상태 표시 (connected/disconnected)

동작 방식

  1. Java 파일 열기
  2. MonacoLSPWebView가 ws://localhost:8080 연결
  3. Eclipse JDT LSP와 통신
  4. 코드 자동완성 활성화

테스트 방법

  1. LSP 컨테이너 실행: docker start zero-lsp-java
  2. Zero IDE 실행
  3. Java 파일 열기
  4. 코드 작성 시 자동완성 확인

ori0o0p and others added 30 commits January 29, 2026 05:18
feature/IDE-1-auth-and-clone | GitHub Auth & Container Clone Spec
feature/IDE-1-auth-impl | GitHub 로그인 로직 및 KeychainHelper 구현
feature/IDE-2-docker-cli | Docker Integration Spec
feature/IDE-2-docker-impl | Docker CLI Wrapper 및 Service 구현
feature/IDE-3-git-session-spec | Git Clone 및 세션 관리 명세
feature/IDE-3-git-session-impl | Git Clone 및 Session Management 구현
feature/IDE-4-ui-api-spec | UI 연동 및 GitHub API 명세
ori0o0p and others added 28 commits February 1, 2026 03:51
feature/IDE-13-integration-tests | 통합 테스트 추가 (Phase 3)
…provement

feature/IDE-13-error-handling-improvement | 에러 핸들링 개선 (Phase 4)
feature/IDE-14-git-basic-operations | Git 기본 작업 지원 (Phase 1)
feature/IDE-14-git-history | Git History, Stash, Editor Integration (Phase 2-4)
feature: apply app logo to LoginView
feature/release-automation | 릴리스 자동화 및 앱 아이콘 생성
feature/ci-cd-workflows | GitHub Actions CI/CD 설정
- Add LSP Java Dockerfile with Eclipse JDT LS
- Add WebSocket bridge for LSP communication
- Add LSPContainerManager for container lifecycle
- Add Monaco editor with LSP integration
- Document PoC setup and architecture
feature/java-lsp-poc | Java LSP PoC
- Container startup: ~5 seconds
- Memory usage: 206 MB (excellent!)
- Image size: 496 MB (acceptable)
- Recommendation: Proceed with optional LSP feature
- Document why we separated LSP into its own container
- Explain WebSocket choice over alternatives
- Include performance comparison results
- Document trade-offs and consequences
- Add MonacoLSPWebView for Java files
- EditorView automatically uses LSP version for Java
- Connects to localhost:8080 LSP WebSocket
- Shows LSP connection status
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant