【问题标题】:Editing .java files in VSCODE causes error on Tomcat in Eclipse在 VSCODE 中编辑 .java 文件会导致 Eclipse 中的 Tomcat 出错
【发布时间】:2025-11-27 03:35:01
【问题描述】:

我正在处理一些 JAVA 中的遗留代码。 这就像带有 JSP 和 servlet 的“纯 java”,没有 maven 也没有 spring boot。 我通常使用 VSCODE,但“一直以来的做法”是使用 ECLIPSE 和 TOMCAT 以及一些特殊配置和密钥库。

我的问题是:在 VSCODE 上修改 .java 文件后,TOMCAT 开始放弃错误:

ago 28, 2020 11:42:13 AM org.apache.catalina.core.ContainerBase startInternal
GRAVE: A child container failed during start
Caused by: org.apache.catalina.LifecycleException: A child container failed during start
ADVERTÊNCIA: The web application [header] appears to have started a thread named [Abandoned connecti
on cleanup thread] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
 java.lang.Object.wait(Native Method)
 java.lang.ref.ReferenceQueue.remove(Unknown Source)
 com.mysql.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:40)
ago 28, 2020 11:42:13 AM org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads

而且我不知道为什么或如何解决。我最终不得不恢复更改,将更改复制并粘贴到 Eclipse 中。然后它起作用了,甚至 GIT 都说没有任何变化......

【问题讨论】:

    标签: java eclipse jsp tomcat visual-studio-code


    【解决方案1】:

    不知道为什么,但排除然后从 buildpath 读取任何文件似乎是诀窍。

    也许只需触摸“.classpath”文件就足够了。

    默认情况下,该文件不会出现在 Eclipse 中,但会出现在 VSCODE 中。它位于项目的根文件夹中。

    看来您不需要每次都这样做。 我正在使用 git flow,只有当我更改为新功能分支时,我才不得不再次这样做。

    【讨论】:

    • 包资源管理器和项目资源管理器视图默认为 .* 命名文件提供过滤器。它始终存在,只是隐藏起来。
    最近更新 更多