【发布时间】:2018-03-26 10:26:17
【问题描述】:
我正在编写一个部署为 WAR 到容器的 jee 应用程序。
这个应用程序依赖于(maven dep)一个打包为 JAR 的 java 库。
该库包含 jee 应用程序用来与后端对话的客户端。
lib 接受后端的基本 uri (host+port+context-path) 作为配置。
从 jee 应用程序配置 lib 的最佳方法是什么,以便可以为多个环境提供配置(例如后端生产 URI 与测试 URI 不同)?
我阅读了有关 @Alternative 注释和 ContextParam 的信息,但两者似乎都是 jee 特定的 AKA,普通 java 无法理解...
Maven 组装似乎不是可行的方法,因为它意味着必须为每个环境部署一个工件到我们的 maven 存储库。
更新 1
如果 jee 应用程序在每个环境(dev、test、prod)中包含一个属性文件,并且可以通过普通的旧 java 构造函数将属性传递给 lib,该怎么办?
【问题讨论】:
-
那么,您是否正在寻找一种非 JEE 方式来配置 JEE 应用程序?问题2:base URI是如何传递给lib的?它可能提供自己的配置方式吗?还是基于 Java 的?
-
我想说我正在寻找一种方法来提供我们都可以理解的普通旧 Java 和 jee 的配置。我是 lib 和 war 的作者,所以我可以根据需要更改它们。 ATM lib 是通过 jar 中嵌入的 prop 文件配置的,但这不够灵活,因为客户端战争的不同部署需要能够提供不同的配置。
标签: java jakarta-ee jar java-8 war