繁体   English   中英

如何在Ec2上运行Java应用程序?

[英]How to run a Java application on Ec2?

我想将一个项目部署到ec2。 它在使用MAVEN的Intellij中进行了修改。 它在Intellij中完美工作。 下面是Intellij的配置。

在此处输入图片说明

我尝试过像java,javac这样的命令行。 这些注释行都失败了。 我想知道是否有某种方法可以将Intellij配置转换为命令行。 我过分依赖IDE。 XD。 现在我很后悔。

EC2是实例的亚马逊云服务。 如果您不熟悉它-最简单的方法是租用一台装有fav操作系统的计算机-例如Windows,然后使用远程桌面登录该计算机,然后执行常规的IDE设置并运行您的应用程序。 您将使您的应用程序在您的实例上运行并且可以正常运行,即使很难完成也是如此。 我会为此投票,但它可以用作瑞士手表。

这取决于您使用的EC2实例的类型。

对我来说,如果它是Linux实例,会更简单。

我将通过ssh连接并git从我的bitbucket / github存储库那里克隆我的项目。

然后,我将使用Maven,有许多不同的选项可以使用Maven运行您的项目。

如评论中所建议,您可以使用exec插件。

但是即使以这种方式,您仍然可以解决一系列问题。

例如,您的linux实例未预装Java Runtime。

您必须至少安装Java和Maven(选择ubuntu发行版,以便可以使用apt-get这样的包管理器轻松进行)。

或者,例如,另一个不容易的任务是通过ssh连接到Linux实例。

AWS会生成一个key.pem文件,您必须使用该文件才能成功连接到您的实例。

ssh -i .ssh/your-key-file.pem username@your-ec2-instance-address

同样,AWS不会告诉您连接到EC2实例必须使用的默认用户的名称(如果您选择ubuntu distro,则用户名为ubuntu )。

同样,当您将your-key-file.pem保存在计算机中时,它必须具有正确的权限

-rw-------@ 1 freedev  staff  1692 Apr 21 09:46 /Users/freedev/.ssh/your-key-file.pem

否则您的ssh客户端不会阅读它。

...回顾过去,在EC2实例上进行部署确实是很长的路要走。

我自己解决了。

  1. 使用mvn package为maven项目生成jar文件。

  2. nohup java xx.jar debug.xml &使用它在外壳中运行jar。 通过使用此命令行,当退出(中止远程连接)时,进程/命令将不会被杀死。

  3. 命令行jcmd用于检查正在运行的进程pid。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM