redhat-developer / redhat-developer/vscode-java

Connection got disposed

Open
#2,921 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

extension-start
Dominant language
TypeScript
Stars
2.3k
Forks
546
Avg merge
20h 1m
Merged PRs (30d)
11

Description

Type: Bug

Hi,
after reload/start visual studio the connection between vs and the language support server will be stopped with connection got disposed.
I see in the development (log level debug) the message "rejected promise not handeld within 1 second: Error: Connection got disposed.

devcontainer.json:
// For format details, see https://aka.ms/vscode-remote/devcontainer.json or this file's README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.195.0/containers/java
{
"name": "Java Development",
"build": {
"dockerfile": "Dockerfile"
},
// Configure tool-specific properties.
"customizations": {
// Configure properties specific to VS Code.
"vscode": {
// Set default container specific settings.json values on container create.
"settings": {
"maven.executable.path": "/home/sepp/.sdkman/candidates/maven/current/bin/mvn"
},
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"vscjava.vscode-java-pack",
"EditorConfig.EditorConfig",
"ritwickdey.LiveServer",
"yzhang.markdown-all-in-one",
"vscjava.vscode-spring-boot-dashboard",
"Pivotal.vscode-boot-dev-pack",
"Gruntfuggly.todo-tree",
"tomoki1207.pdf",
"redhat.vscode-xml",
"DotJoshJohnson.xml",
"redhat.fabric8-analytics",
"ms-vscode.hexeditor",
"mike-lischke.vscode-antlr4",
"humao.rest-client",
"vscjava.vscode-java-debug",
"VisualStudioExptTeam.vscodeintellicode",
"VisualStudioExptTeam.intellicode-api-usage-examples",
"redhat.java",
"vscjava.vscode-maven",
"42Crunch.vscode-openapi",
"vscjava.vscode-java-dependency",
"vmware.vscode-boot-dev-pack",
"vmware.vscode-spring-boot",
"vscjava.vscode-spring-initializr",
"vscjava.vscode-java-test",
"DougFinke.vscode-pandoc",
"redhat.vscode-yaml"
]
}
},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "java -version",
// Uncomment to connect as a non-root user. See https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "sepp"
}

Docker:

Node - Entwicklungsumgebung

ARG OS=debian
ARG TARGET=latest

Basis - Image laden

FROM ${OS}:${TARGET} AS develop

Shell Einstellen setzen

SHELL ["/bin/bash", "--login", "-c"]

Benutzer

ENV USER_NAME=sepp
ENV USER_UID=2000
ENV USER_GID=${USER_UID}
ENV USER_PASSWORD="Posix1721#"

System aktualisieren

RUN apt-get update -y && apt-get upgrade -y

Anwender Anleger anlegen

RUN groupadd --gid $USER_GID $USER_NAME
&& useradd --uid $USER_UID --gid $USER_GID -p $USER_PASSWORD -s /bin/bash -m $USER_NAME

Sudo installieren und den Anwender (USER_NAME) hinzufügen

RUN apt-get install -y sudo
&& echo $USER_NAME ALL=(root) NOPASSWD:ALL > /etc/sudoers.d/$USER_NAME
&& chmod 0440 /etc/sudoers.d/$USER_NAME

WGET und GIT installieren

RUN apt-get update
&& apt-get install -y locales
&& apt-get install wget -y
&& apt-get install git -y
&& apt-get install mitmproxy -y
&& apt-get install htop -y
&& apt-get install zip -y
&& apt-get install curl -y
&& apt-get install make -y
&& apt-get install python -y
&& apt-get install procps -y
&& apt-get install build-essential -y
&& apt-get install pandoc -y
&& apt-get install librsvg2-bin -y
&& apt-get install texlive-latex-recommended -y
&& apt-get install chromium-driver -y
&& apt-get install jq -y

RUN sed -i -e 's/# de_DE.UTF-8 UTF-8/de_DE.UTF-8 UTF-8/' /etc/locale.gen && locale-gen
ENV LC_ALL de_DE.UTF-8
ENV LANG de_DE.UTF-8
ENV LANGUAGE de_DE:de

Zeitzone setzen

RUN rm /etc/localtime &&
ln -s /usr/share/zoneinfo/Europe/Brussels /etc/localtime

Arbeitsumgebung und den Anwender zu setzen

WORKDIR /home/sepp
USER sepp

Anwenderumgebung, und Tools (nvm, node, typescript, nestjs und angluar installieren)

RUN wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
RUN . .nvm/nvm.sh
&& nvm install --no-progress --latest-npm --lts

Java - Entwicklungsumgebung einrichten

RUN wget -qO- https://get.sdkman.io | bash
RUN source .sdkman/bin/sdkman-init.sh
&& sdk install java 11.0.17-tem
&& sdk install maven

// Host - System

  • Apple M1 Pro
  • 16 GB
  • Ventura 13.2

// Docker

  • v20.10.22
    "builder": {
    "gc": {
    "defaultKeepStorage": "20GB",
    "enabled": true
    }
    },
    "experimental": false,
    "features": {
    "buildkit": true
    }
    }

Greetings

Extension version: 1.15.2023020403
VS Code version: Code 1.75.0 (e2816fe719a4026ffa1ee0189dc89bdfdbafb164, 2023-02-01T15:26:31.005Z)
OS version: Darwin arm64 22.3.0
Modes:
Sandboxed: No
Remote OS version: Linux arm64 5.15.49-linuxkit

System Info
Item Value
CPUs Apple M1 Pro (10 x 24)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: disabled_off
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
metal: disabled_off
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_renderer: enabled_on
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: disabled_off
Load (avg) 6, 4, 3
Memory (System) 16.00GB (0.04GB free)
Process Argv
Screen Reader no
VM 0%
Item Value
Remote Dev Container: Java Development
OS Linux arm64 5.15.49-linuxkit
CPUs unknown (5 x 0)
Memory (System) 7.67GB (5.07GB free)
VM 0%

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the connection disposal with the supplied devcontainer.json and Dockerfile in VS Code, then inspect the development logs around reload or restart. Done means the Java language-support connection remains available after reload/start and the "Connection got disposed" rejected-promise message no longer appears.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, java, typescript
Domain
developer-experience, devtools
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.