使用Maven在远程服务器上部署Java应用程序

时间:2016-05-17 11:49:08

标签: java maven scp

我正在使用Maven编写Java应用程序。我必须在远程强大的服务器上部署应用程序来运行实验。我想到的最简单的方法是使用Maven着色插件构建一个带依赖jar的jar,然后将uber-jar复制到远程服务器。然而,jar很大,超过100 MB,通过我们的网络发送它需要一些时间。这是多余的,因为大多数jar都包含大量依赖项(Scala,Spark,Jetty),当我们更改代码时,只有很小一部分会发生变化。

我可以使用Maven在远程服务器上安装依赖项,然后只将更小的jar发送给服务器吗?

我有SSH连接到服务器,我可以使用SCP插件。

1 个答案:

答案 0 :(得分:0)

你在问题​​中提到了Jetty,所以我假设你的应用服务器是Jetty。我会尝试将公共库jar上传到服务器,然后将它们包含在jetty类路径中。这将是一次性任务。也许这会有所帮助:How do I place jars in jetty/lib on the jetty classpath?

在此之后你可以使用maven构建一个可以上传和部署的“瘦”战争/ jar。