我基本上需要将参数传递给包含config.json路径的WAR文件。我希望以这样的方式实现它,以便一旦将项目导出为WAR文件,我应该能够在不打开WAR文件的情况下更改参数,并且必须再次导出它。我知道我可以在web.xml中传递参数,这些参数可以在servlet中获得但是不会更改web.xml要求我打开WAR文件吗?
我正在使用jetty-runner.jar来部署我的webapp。
答案 0 :(得分:5)
当你运行jetty-runner.jar时,你可以将属性传递给jvm
java -jar jetty-runner.jar my.war -Dproperty.name=value
在您的web.xml中,您可以使用以下语法
<context-param>
<param-name>property.name</param-name>
<param-value>${property.name}</param-value>
</context-param>
答案 1 :(得分:1)
我可以看到2个问题的解决方案:
1)定义一个环境变量,该变量指定托管jetty实例的服务器上config.json的路径
2)在类路径中添加包含config.json的文件夹,并从Web应用程序访问它。