gpt4 book ai didi

java - HttpServer 不是 API 的 VSCode Java 访问限制错误

转载 作者:行者123 更新时间:2023-12-04 16:05:17 26 4
gpt4 key购买 nike

在 VSCode v1.18.0使用 Redhat 的 Java 语言支持 v0.14.0扩展,由于使用 com.sun.net.httpserver.*,我在编辑器中收到错误通知类如显示here

enter image description here

当我调整创建的扩展时,所有红色波浪线都消失了 .classpath文件如

...
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8/">
<accessrules>
<accessrule kind="accessible" pattern="com/sun/net/**"/>
</accessrules>
</classpathentry>
...

问题在于 .classpath每当 VSCode 重新启动时,文件似乎都会被覆盖。

更新:都不是 jdeps也不是 jdeprscan提示编译的jar
$ jdeps --version
9.0.1

$ jdeprscan --version
9.0.1

$ jdeps --jdk-internals ContactService-0.5.0.jar

$ jdeprscan ContactService-0.5.0.jar
Jar file ContactService-0.5.0.jar:

有没有办法(例如扩展的 java.jdt.ls.vmargs 设置的魔法参数?)让这些编辑器错误通知永久消失?

最佳答案

我的 VS Code 不会重置 .classpath 文件。可能是你的版本?

我正在使用:

Version: 1.39.2 (user setup)
Commit: 6ab598523be7a800d7f3eb4d92d7ab9a66069390
Date: 2019-10-15T15:35:18.241Z
Electron: 4.2.10
Chrome: 69.0.3497.128
Node.js: 10.11.0
V8: 6.9.427.31-electron.0
OS: Windows_NT x64 10.0.16299

如果您使用的是 gradle ,你可以按照这里的建议去做: https://github.com/redhat-developer/vscode-java/issues/120#issuecomment-450530640
import org.gradle.plugins.ide.eclipse.model.AccessRule

apply plugin: 'java'
apply plugin: 'eclipse'

eclipse {
classpath {
file {
whenMerged {
def jre = entries.find { it.path.contains 'org.eclipse.jdt.launching.JRE_CONTAINER' }
jre.accessRules.add(new AccessRule('0', 'javafx/**'))
jre.accessRules.add(new AccessRule('0', 'com/sun/javafx/**'))
}
}
}
}

只需根据您的需求进行更改

关于java - HttpServer 不是 API 的 VSCode Java 访问限制错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47245552/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com