将java项目部署到google计算引擎

将java项目部署到google计算引擎,java,tcp,google-compute-engine,Java,Tcp,Google Compute Engine,我很难将Java项目部署到Google云引擎。我读了谷歌云的大部分文档,但还是搞不懂 我想要的只是tcp通信。我不需要HTML本身来做一些事情。很多指南都谈到servlet和HTTPGET和post,但我只需要tcp。 也许我缺乏信息,这就是为什么我不能管理它 那么首先,我需要某种http服务器来运行tcp请求吗?如果没有,我如何部署我的项目 现在我的项目只有Java。如果重要的话,我用了IntelliJ。是这样的 import java.io.IOException; import java.

我很难将Java项目部署到Google云引擎。我读了谷歌云的大部分文档,但还是搞不懂

我想要的只是tcp通信。我不需要HTML本身来做一些事情。很多指南都谈到servlet和HTTPGET和post,但我只需要tcp。 也许我缺乏信息,这就是为什么我不能管理它

那么首先,我需要某种http服务器来运行tcp请求吗?如果没有,我如何部署我的项目

现在我的项目只有Java。如果重要的话,我用了IntelliJ。是这样的

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

public class MainServer {

    public static void main(String[] args) {
        final int SERVER_PORT = 3000;
        final int SERVER_TIMEOUT = 5000;

        try (ServerSocket serverSocket = new ServerSocket(SERVER_PORT)) {
            while (true) {
                try {
                    Socket clientSocket = serverSocket.accept();
                    clientSocket.setSoTimeout(SERVER_TIMEOUT);
                    new ClientThread(clientSocket).start();
                } catch (IOException ignored) {
                }
            }
        } catch (IOException ignored) {
        }
    }
}
在ClientThread中,我处理每个请求

我在当地试过,效果很好

现在我只需要将这个项目以某种方式部署到计算引擎并使其工作

此外,我在服务器上安装了JavaJRE。我希望端口3000是好的,如果不是我可以改变它


提前感谢,如果我不太清楚,请原谅。

创建一个可运行的JAR文件。将其复制到您的计算引擎实例。运行它


如果您希望能够在不登录实例的情况下启动/停止该程序,那么您需要一个简单的servlet。请看-这可能是此用例的最佳解决方案。

我的首选方法是在计算引擎计算机上使用命令行工具来运行以下顺序-与在开发计算机上的操作相同:

部署前-执行以下设置(创建项目时执行一次任务)

  • 安装Java JDK
  • 安装maven
  • 安装git
然后,在安装完成后-您可以执行以下2个简单步骤,并在每次要使用较新版本更新服务器时重复这些步骤:

  • 将源代码从开发存储库克隆到计算引擎计算机
  • mvn jetty:在克隆的项目文件夹中运行

  • 就这样。我喜欢它,因为这正是我在本地计算机上要做的。

    谢谢!!你这样说很简单。我所要做的就是像你说的那样——创建一个可运行的JAR,将它复制到服务器并运行它。别忘了在防火墙中允许相关的端口和协议。你能提供更多细节吗?通过使用“ng new”创建angularjs项目来创建项目?如何制作一个可运行的罐子?如何复制到云?你提到复制到CE,我想复制到AE(应用程序引擎)——我的理解是它们是两个不同的东西。计算引擎和应用程序引擎确实不同: