你好,
我有一个关于部署 Java 应用程序的更具体的问题。
我创建了一个 Java 应用程序,它是一个 WAR 文件,可以安装在任何 Java 应用程序服务器上。这很完美。现在,对于没有 Java 经验的用户,我想以某种方式将我的应用程序与应用程序服务器打包在一起,并将其作为独立版本分发。
问题1:这可能吗?问题 2:哪个应用程序服务器最适合这个?问题 3:我应该从哪里开始学习如何做到这一点?
你有什么经验可以和我分享。
谢谢。
你好,
我有一个关于部署 Java 应用程序的更具体的问题。
我创建了一个 Java 应用程序,它是一个 WAR 文件,可以安装在任何 Java 应用程序服务器上。这很完美。现在,对于没有 Java 经验的用户,我想以某种方式将我的应用程序与应用程序服务器打包在一起,并将其作为独立版本分发。
问题1:这可能吗?问题 2:哪个应用程序服务器最适合这个?问题 3:我应该从哪里开始学习如何做到这一点?
你有什么经验可以和我分享。
谢谢。
我有两个建议给你
我更喜欢第一个选项,因为它使用 tomcat。
这取决于您的应用程序。你有 EJB 吗?如果没有,让我们选择更轻且能胜任的Tomcat。如果是,您需要 JBoss 才能正确运行它们。
然后你可以用你的 War 压缩整个服务器,这应该可以工作。
查看 Winstone servlet 容器,它具有您想要的支持用例。
这就是 Hudson 持续集成服务器独立运行的方式。
至少使用 JBoss,部署应用程序后压缩整个服务器的简单方法应该可以正常工作。由于 JBoss 包含 Tomcat,我想它也应该与 Tomcat 一起使用。
为了使用户更容易启动服务器,您可以提供自定义runMyServer.bat
(或.sh
)来执行run.bat -c MyServer -b 127.0.0.1
(当然替换所需的 IP 地址 :-)。
Maven 有一个简洁的插件 (the jetty-console-maven-plugin
),它允许创建一个“可执行的”战争(它创建一个嵌入 Jetty servlet 容器的单个工件)。它非常易于使用,请查看。