我正在分发一个简单的 Java 网络应用程序作为开放源代码。 Web 应用程序需要在运行前进行配置——需要创建一个配置文件,并且该配置文件的位置需要作为 web.xml
中的参数为 Web 应用程序所知。
现在我的问题是如何最好地打包和分发 webapp 以使其易于安装,以及如何在文档中描述该安装过程。我能想到的选项是:
- 将网络应用程序作为 WAR 存档分发。建议用户将 WAR 部署到他们的 Tomcat/Jetty/whatever 中,然后将他们的配置文件放入
/webapps/
myapp
/WEB -INF
,并相应修改/webapps/
myapp
/WEB-INF/web.xml
- 分发网络应用程序作为源代码。建议用户将配置文件放入
/src/main/webapp/WEB-INF
文件夹,然后修改/src/main/webapp/WEB-INF/web.xml
相应地,然后使用 Ant 或 Maven 构建一个 WAR,并将其部署到他们的 servlet 容器中。
可能还有其他我想不到的选择。
对于需要安装、配置和部署 Web 应用程序的用户来说,哪种设置可能最方便?
编辑:我应该补充一点,配置文件不仅仅是几行——它是一个包含数据库模式和其他内容的大文件,并且可能使用外部编辑器生成;所以仅仅提供良好的默认值不是一种选择。
最佳答案
外部化此配置并可能提供一些默认值。如果您制作新版本的应用,每个人都必须记住备份该配置文件,然后重新部署并复制回该文件 --> 这是一场噩梦。
有很多方法可以将该配置放在其他地方。例如,您可以使用 Java Preferences
。
关于java - 使开源 Java webapp 易于在 Tomcat、Jetty 等上安装和部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9469823/