Skip to content

fix(lsp): launch bundled JDTLS with Java directly - #276

Merged
1lck merged 4 commits into
previewfrom
codex/direct-jdtls-java-launch
Aug 27, 2026
Merged

fix(lsp): launch bundled JDTLS with Java directly#276
1lck merged 4 commits into
previewfrom
codex/direct-jdtls-java-launch

Conversation

@1lck

@1lck 1lck commented Aug 27, 2026

Copy link
Copy Markdown
Owner

Summary

  • launch packaged JDTLS directly with bundled Java on Windows and macOS
  • resolve Equinox, platform configuration, and Lombok resources in platform adapters while Rust Core owns JVM arguments
  • require architecture-native JDTLS configuration on macOS and pass the package architecture through the default universal path
  • bundle separate arm64 and x86_64 JDK 21 runtimes in universal apps, selecting the runtime for the active process architecture, including Rosetta launches
  • preserve the legacy LanguageServers/jdk layout for single-architecture packages and external wrapper fallback for external JDTLS installations
  • verify the default universal App/DMG path, both JDTLS configurations, both JDK architectures, and incomplete-package failures in CI

Verification

  • ./scripts/verify-rust-core.sh
  • ./scripts/test-macos.sh (637 tests)
  • ./scripts/verify-macos-package.sh (default universal App and DMG; arm64/x86_64 main binary and JDK resources)
  • node scripts/test-verify-download-cache.mjs
  • macOS shell syntax checks and git diff --check
  • ./scripts/verify-shared-contracts.sh
  • ./scripts/verify-service-boundaries.sh
  • ./scripts/verify-windows-boundaries.sh
  • Windows ARM64 Release build
  • Windows Tauri Rust tests: 88 passed
  • Windows no-PowerShell-path runtime verification reached ServiceReady with bundled java.exe as the direct child and no shell child

Closes #273

1lck added 2 commits August 27, 2026 14:01
Move packaged JDTLS JVM argument construction into Rust Core and pass platform-resolved launcher, configuration, and Lombok resources through the shared contract. Preserve wrapper fallback for external installations.

Refs #273
Reject cross-architecture macOS configuration fallback, validate packaged resources against the target architecture, and cover the ARM packaging path with a regression test.

Refs #273
@1lck

1lck commented Aug 27, 2026

Copy link
Copy Markdown
Owner Author

@lithe review

@github-actions

github-actions Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Lithe Review

结论: ❓ 审查未完成

审查状态:cancelled
请查看本次 Actions 日志与诊断附件后重新召唤。

1lck added 2 commits August 27, 2026 19:08
Bundle architecture-specific JDKs in universal apps, select the runtime for the active process architecture, and exercise the default universal package path in CI.\n\nRefs #273
@1lck
1lck merged commit 228dacf into preview Aug 27, 2026
15 checks passed
@1lck
1lck deleted the codex/direct-jdtls-java-launch branch August 27, 2026 11:54
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