我有一个需要分发给客户的J2EE应用程序,客户将拥有自己选择的应用程序服务器。编写构建脚本以编写J2EE应用程序源(在客户站点)以便最终能够在其服务器上部署应用程序的建议方法是什么?
此外,在编译过程中应该实际使用哪些JAR?由于这是针对应用程序服务器不可知的脚本,建议使用来自应用程序服务器的JAR(比如servlet.jar,jms.jar,ejb.jar等),而不是让我的客户从特定的JAR中下载这些JAR。存储库?是否有为此类JAR(J2EE API的JAR)推荐的此类存储库?
PS:EAR文件无法在本地构建并发送给客户,因为每次安装都会进行额外的开发,以便与其他系统集成,在应用程序上执行自定义等。
答案 0 :(得分:1)
在本地构建应用程序,并将WAR / EAR文件分发给客户。
编辑:
您描述的情况基本上是您需要为客户的进一步开发提供代码库。在这种情况下,我建议您考虑创建工作中的maven模块,这些模块被推送到客户可访问的私有存储库。然后,让他们知道他们需要依赖于他们的pom.xml中的模块X版本Y,然后模块X将提取正确版本中所需的所有库。
请注意,如果他们不使用Maven,他们可能会使用Ant Ivy进行依赖项解析。
答案 1 :(得分:1)
可以在Sun的网站上找到一些通用的J2EE API jar,但是你可能需要花很多钱才能找到它们。
我会使用你方便的任何JAR,将其与源捆绑,但远离/ WEB-INF / lib
答案 2 :(得分:0)
基本上,不要在EAR或WAR文件中包含容器jar(servlet.jar,jms.jar,ejb.jar等)。
如果您只是在讨论servlet.jar,那么Web容器会提供 - 您不应该将它包含在war文件中。
如果您正在创建EAR文件,那么您必须使用企业容器,它将具有JMS.jar和EJB.jar。
Tomcat上的JMS会有点棘手 - 你需要人们在他们的服务器上安装像activemq这样的东西。