0

我有一个 java 文件,其中一个变量在运行时取值。我使用 Web 服务发现搜索服务并将其 url 保存在变量中。现在我需要将此值传递给 pom.xml。

abc.java 有代码

String url= http://xx.xx.xx.xx:55939/ABCDevice?wsdl

Pom.xml 是:

<wsdlOptions>
           <wsdlOption>
           <wsdl>url</wsdl> <!-- get urlvalue from java file -->
            <wsdlLocation>classpath:com/admin/discovery/ABCService.wsdl
                </wsdlLocation>
            </wsdlOption>
            </wsdlOptions>

在 wsdl 中,我想传递字符串值“ http://xx.xx.xx.xx:55939/ABCDevice?wsdl ”,该值仅在运行时确定。

我该怎么做?

4

1 回答 1

0

我不认为这是特定于 Apache Maven 的问题,而是一般的 Java 问题(Maven 可能让您意识到这一点)。在构建期间,您不知道 url 应该是什么。根据应用程序的类型,您有多种选择:

  • JNDI(如果是 Web 容器)
  • 预定义位置上的属性文件
  • 系统属性
  • 作为参数(在可执行 jar 的情况下)
  • 在部署之前调整 web.xml(一些 web 容器可以帮助你)
  • ...

在您使用像 Spring 这样的框架时,有一些简单的方法可以注入上述选项。

于 2013-09-21T10:02:23.733 回答