【发布时间】:2021-06-29 16:40:13
【问题描述】:
我使用捆绑在 jdk11 中的 com.sun.net.httpserver.HttpServer 创建了一个非常简单的 Web 服务器,
而且我没有任何依赖项,所以我什至不想创建 pom 或 gradle 构建文件。
在 Google Cloud Run 中,我可以使用一个简单的 Dockerfile 编译 *.java 并执行它。
1 个 java 源文件和 1 个 Dockerfile 完成如下工作:
import java.io.IOException;
import java.net.InetSocketAddress;
import com.sun.net.httpserver.HttpServer;
public class Main {
public static void main(String[] args) throws IOException {
HttpServer server = HttpServer.create(new InetSocketAddress(8080), 0);
server.createContext("/", exchange -> {
byte[] result = "Hello World!".getBytes();
exchange.sendResponseHeaders(200, result.length);
exchange.getResponseBody().write(result);
});
server.start();
}
}
FROM openjdk:11-slim
COPY Main.java /home/Main.java
WORKDIR /home/
RUN javac Main.java
ENTRYPOINT ["java", "Main"]
是否可以在 App Engine 中实现?
【问题讨论】:
标签: java google-app-engine java-11