Repository navigation
Java Support v1.1.3
Pre-release中文
Java Support 1.1.3 为配套 Viva 预览版提供 Java 项目支持。本版本是预发布,插件包不带发布者签名。
下载与安装
下载本页对应系统的 ZIP:macOS Apple Silicon(darwin-arm64)、macOS Intel(darwin-x64)或 Windows x64(windows-x64)。在兼容 Viva 客户端的插件设置中选择从文件安装 ZIP。
需要包含 Lithe #1884 的客户端(修订 607f00967d70a7017d49805183d0d2e6ffdf1c0d 或更新版本)及 Core #29。旧版 macOS Lithe 和未包含这些修复的 Viva preview 不受支持。插件使用契约/API/能力版本 0;语言服务器使用随包 Temurin 21,项目运行仍使用用户选择的 JDK。
Maven 项目配合 Maven 0.0.1;Gradle 项目配合 Gradle 1.0.0。构建工具由用户安装或由项目 Wrapper 提供。
更新
-
修复并发处理索引进度时,晚到的旧更新重新激活已完成任务、导致运行动作不恢复的问题;终态历史有界且不增加后台轮询。
-
补齐自身 LICENSE/NOTICE 与 Rust 构建依赖的许可和哈希清单,缺失时阻止打包。
-
跑通普通 Maven、Gradle 和普通 Java 目录的补全、编译、运行及断点调试,Java 8 项目保留正确的编译目标。
-
Windows 后端静态链接编译器运行库,发布检查拒绝额外的 VC++/MinGW 运行库依赖。
-
修复 Windows 可执行路径、中文/UNC 文件 URI、Lombok 加载及过长 classpath;退出后清理临时 classpath JAR。
-
冷索引暂时无法返回运行动作时,在索引任务完成后有界恢复,不增加后台轮询。
-
已在 macOS 与 Windows 无头验证断点变量、继续/停止、编译错误阻止运行旧 class、暂停时关闭及插件安装目录只读。
兼容性与已知限制
- 二进制依赖类跳转尚未接通:语言服务器能返回
jdt:目标,但插件未注册对应内容提供者,Viva 无法打开类内容;不保证反编译视图或类间继续跳转。 .jsp当前按 HTML 打开,没有 Java 语言服务接管,JSP 内的 Java 补全与跳转不受支持。
尚未完整验收原生窗口、全部日志/取消路径、JUnit/TestNG 行内运行器和 Spring/MyBatis。JSP HTTP/Servlet 调试通过不代表 JSP 源码补全或 JSP 断点;Ant 源码布局不代表执行 Ant target。Java 5/7 源码级别、长 module-path、JavaCC 生成模型、多版本 JAR 和部分旧泛型项目仍有限制,详见 README 与主仓库 #1881–1883。
实测 JDT 内存与补全延迟没有显著改善,本版本不宣称整体性能提升。Windows 的真实工作流在 ARM Windows 上使用 x64 工具验证,其耗时不代表原生 AMD64 性能。
English
Java Support 1.1.3 targets the matching Viva preview. This is a prerelease with unsigned plugin archives.
Download and installation
Choose the ZIP for macOS Apple Silicon (darwin-arm64), macOS Intel (darwin-x64), or Windows x64 (windows-x64), then install it from a file in the compatible Viva client's plugin settings.
The client must include Lithe #1884, revision 607f00967d70a7017d49805183d0d2e6ffdf1c0d or newer, and Core #29. Legacy macOS Lithe and earlier Viva previews are unsupported. Contract, API and capability versions are 0. Bundled Temurin 21 runs the language server; project execution uses the selected project JDK.
Use Maven 0.0.1 for Maven projects and Gradle 1.0.0 for Gradle projects. Supply the build tool yourself or through the project's wrapper.
Changes
-
Prevent late progress updates from resurrecting completed indexing jobs and blocking run-action recovery; terminal history is bounded without polling.
-
Include project and Rust dependency notices with a hash manifest; missing notices stop packaging.
-
Validated completion, compilation, execution and breakpoint debugging for ordinary Maven, Gradle and plain Java projects, preserving Java 8 compilation targets.
-
The Windows backend statically links compiler runtimes; release checks reject extra VC++/MinGW runtime DLL dependencies.
-
Fixed Windows executable paths, Unicode/UNC file URIs, Lombok loading and long classpaths; temporary classpath JARs are removed after execution.
-
Recover run actions after cold-index jobs finish, with bounded retries and no background polling.
-
Headless macOS and Windows workflows cover breakpoint locals, continue/stop, refusal to run stale classes after compilation errors, closing paused sessions and read-only installed packages.
Compatibility and known limitations
- Navigation into binary dependency classes is not wired up: the language server returns
jdt:targets, but no matching content provider is registered, so Viva cannot open them. Decompiled views and further navigation between classes are not supported. .jspfiles currently open as HTML without a Java language service; Java completion and navigation inside JSP are unsupported.
Native windows, all logging/cancellation paths, inline JUnit/TestNG and Spring/MyBatis have not been fully accepted. JSP HTTP/Servlet debugging does not cover JSP-source completion or JSP breakpoints; Ant source layouts do not cover Ant targets. Java 5/7 source levels, long module-paths, JavaCC models, multi-release JARs and some older generic code remain limited; see README and Lithe #1881–1883.
Measurements found no significant JDT memory or completion-latency improvement. Windows workflows used x64 tools on ARM Windows, so their timings do not represent native AMD64 performance.
SHA-256
78e761d4c31af0940122b6e2126b7a2f4675951130e5df1fdceba586b2b36eff Lithe-Java-Support-1.1.3-darwin-arm64.zip
31768b837c28f0f7c626869d477f26cb96786e26c2618b4d7fdf80a9dac18f21 Lithe-Java-Support-1.1.3-darwin-x64.zip
4be8267290b0ebb52002c8ebb3156c71f8879adf00f92ffaa3ed1ff3a59186e3 Lithe-Java-Support-1.1.3-windows-x64.zip