不确定这个问题是否已经得到解答,但我一直在寻找谷歌和stackoverflow一段时间,并没有找到符合我需要的东西。
我有一个pom.xml文件,我在其中定义了一个属性(这是一个WSDL URL):
<properties>
<service.wsdl.url>https://myservice.com/testservice.asmx?wsdl</service.wsdl.url>
</properties>
然后我使用wsimport为Web服务组件生成了一个插件:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<version>1.12</version>
<executions>
<execution>
<id>myservice</id>
<goals>
<goal>wsimport</goal>
</goals>
<configuration>
<wsdlUrls>
<wsdlUrl>${service.wsdl.url}</wsdlUrl>
</wsdlUrls>
<packageName>com.myservice.generated</packageName>
<sourceDestDir>src/main/java</sourceDestDir>
<args>
<arg>-B-XautoNameResolution</arg>
</args>
</configuration>
</execution>
</executions>
</plugin>
我的问题是如何从属性文件中获取URL。我在我的src / main / resources文件夹中有一个名为“application.properties”的属性文件,其中我有一个键/值对:
service.wsdl.url = https://myservice.com/testservice.asmx?wsdl
我想做点什么:
<properties>
<service.wsdl.url>${service.wsdl.url}</service.wsdl.url>
</properties>
我正在检查一些答案和帖子,但如上所述,我无法找到满足我需求的东西。
任何帮助将不胜感激。
提前致谢!
答案 0 :(得分:2)
您可以使用 properties-maven-plugin
作为:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0.0</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>src/main/resources/application.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>