首页 > 解决方案 > 让 Maven/jetty 应用程序在 GCE 上永久运行

问题描述

我在 Google Cloud Ploutform 计算引擎上创建了一个 VM 实例。安装了 Ubunutu 18.04 LTS、Java JDK、Maven 和 Jetty。还安装了 Tomcat,但在 mo 中没有使用它。

我将 JAVA_HOME 设置为 JDK 位置并将其添加到 /etc/enviroment 并通过源 /etc/enviroment 确认这一点。然后我 CD 到我的应用程序运行 mnv jetty:run 并且应用程序出现在端口 8888 上,一切正常。

我使用 GCE Browser SSH 终端,我有两个问题。当我关闭笔记本电脑或关闭浏览器时,应用程序会终止并关闭。所以我必须通过 SSH 回到 GCE 并运行上面的命令,但首先它告诉我我的 java home 指向的是 jre 而不是 JDK。运行 echo JAVA_HOME 显示它是正确的,所以我每次登录时都需要在 mvn jetty:run 之前运行 source /etc/environment 。

1,如何使应用程序保持打开状态,使其不依赖于我的 PC 上的打开终端(很高兴让一个打开并在机器上运行,只是不知道如何执行此操作)。

2、为什么每次登录都要运行一个源码?确定将其设置在环境文件中就足够了吗?

我对 java 和 linux 有点陌生,所以任何帮助/建议表示赞赏。

保罗

标签: javamavengoogle-cloud-platformjettygoogle-compute-engine

解决方案


  1. 您可以在后台运行您的应用程序,这样即使您关闭终端也不会影响 java 进程。你可以使用这个命令

    $ nohup mvn 码头:运行 &

您的日志将被重定向到同一目录中名为 nohup.out 的文件

  1. 为了设置环境变量,有一个名为 /etc/profile 的文件。只需提及此文件中的详细信息并登录/注销,它将是永久性的。

推荐阅读