Need absolute path for third librairies

未关闭
#966 3 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
48/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
冷清
技术栈
java, typescript, vscode

调研方向

使用 java.project.referencedLibraries 中项目本地的 lib/**/*.jar 条目重现该故障,然后跟踪第 351 行 ProjectCommand.java 中报告的路径转换。确认项目设置面板如何提供 classpath,并确定相对路径被拒绝的边界。当项目内的 jar 被接受并在没有绝对路径异常的情况下完成引用时,即表示完成。

由索引模型根据 Issue 内容生成。

描述

ai-triaged bug

I can't add manually my jar to my project in any way.

First, I made a lib folder and add on the configuration file :

{
    "java.compile.nullAnalysis.mode": "disabled",
    "java.project.referencedLibraries": [
        "lib/**/*.jar"
    ]
}

Didn't works, the jar is not referenced.

I tried to add it with the project setting pane, get an error :

!ENTRY org.eclipse.jdt.ls.core 4 2 2026-02-12 07:53:10.315
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.jdt.ls.core".
!STACK 0
org.eclipse.jdt.internal.core.ClasspathEntry$AssertionFailedException: Path for IClasspathEntry must be absolute: lib/HyUI-0.8.4-all.jar
	at org.eclipse.jdt.core.JavaCore.newLibraryEntry(JavaCore.java:5430)
	at org.eclipse.jdt.ls.core.internal.commands.ProjectCommand.convertClasspathEntry(ProjectCommand.java:351)
	at org.eclipse.jdt.ls.core.internal.commands.ProjectCommand.updateClasspaths(ProjectCommand.java:244)
	at org.eclipse.jdt.ls.core.internal.JDTDelegateCommandHandler.executeCommand(JDTDelegateCommandHandler.java:104)
	at org.eclipse.jdt.ls.core.internal.handlers.WorkspaceExecuteCommandHandler$1.run(WorkspaceExecuteCommandHandler.java:230)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
	at org.eclipse.jdt.ls.core.internal.handlers.WorkspaceExecuteCommandHandler.executeCommand(WorkspaceExecuteCommandHandler.java:220)
	at org.eclipse.jdt.ls.core.internal.handlers.JDTLanguageServer.lambda$4(JDTLanguageServer.java:618)
	at org.eclipse.jdt.ls.core.internal.BaseJDTLanguageServer.lambda$0(BaseJDTLanguageServer.java:87)
	at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(Unknown Source)
	at java.base/java.util.concurrent.CompletableFuture$Completion.exec(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinPool.scan(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

!ENTRY org.eclipse.jdt.ls.core 4 0 2026-02-12 07:53:10.317
!MESSAGE Error in calling delegate command handler
!STACK 0
org.eclipse.jdt.internal.core.ClasspathEntry$AssertionFailedException: Path for IClasspathEntry must be absolute: lib/HyUI-0.8.4-all.jar
	at org.eclipse.jdt.core.JavaCore.newLibraryEntry(JavaCore.java:5430)
	at org.eclipse.jdt.ls.core.internal.commands.ProjectCommand.convertClasspathEntry(ProjectCommand.java:351)
	at org.eclipse.jdt.ls.core.internal.commands.ProjectCommand.updateClasspaths(ProjectCommand.java:244)
	at org.eclipse.jdt.ls.core.internal.JDTDelegateCommandHandler.executeCommand(JDTDelegateCommandHandler.java:104)
	at org.eclipse.jdt.ls.core.internal.handlers.WorkspaceExecuteCommandHandler$1.run(WorkspaceExecuteCommandHandler.java:230)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
	at org.eclipse.jdt.ls.core.internal.handlers.WorkspaceExecuteCommandHandler.executeCommand(WorkspaceExecuteCommandHandler.java:220)
	at org.eclipse.jdt.ls.core.internal.handlers.JDTLanguageServer.lambda$4(JDTLanguageServer.java:618)
	at org.eclipse.jdt.ls.core.internal.BaseJDTLanguageServer.lambda$0(BaseJDTLanguageServer.java:87)
	at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(Unknown Source)
	at java.base/java.util.concurrent.CompletableFuture$Completion.exec(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinPool.scan(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

The only solution/workaround I found, it's to put the jar outside of my project and use the project setting pane.

主要语言
TypeScript
星标
199
派生
105
平均合并
1 天 22 小时
30 天内合并 PR
27

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

microsoft/vscode-java-dependency 的其他 Issue

查看 microsoft/vscode-java-dependency 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。