On Tue, 14 Sep 2021 08:52:37 GMT, Julia Boes <jb...@openjdk.org> wrote:
> This change implements a simple web server that can be run on the > command-line with `java -m jdk.httpserver`. > > This is facilitated by adding an entry point for the `jdk.httpserver` module, > an implementation class whose main method is run when the above command is > executed. This is the first such module entry point in the JDK. > > The server is a minimal HTTP server that serves the static files of a given > directory, similar to existing alternatives on other platforms and convenient > for testing, development, and debugging. > > Additionally, a small API is introduced for programmatic creation and > customization. > > Testing: tier1-3. src/jdk.httpserver/share/classes/com/sun/net/httpserver/Headers.java line 288: > 286: } > 287: > 288: private static final Headers EMPTY = new UnmodifiableHeaders(new > Headers()); IDEA warns here: >Referencing subclass UnmodifiableHeaders from superclass Headers initializer >might lead to class loading deadlock >Such references can cause JVM-level deadlocks in multithreaded environment, >when one thread tries to load the superclass and another thread tries to load >the subclass at the same time. ------------- PR: https://git.openjdk.java.net/jdk/pull/5505