运行时未获取WAR文件中的JAR文件的属性?

时间:2018-10-19 00:51:29

标签: gradle gradlew

我是一名DevOps专家,不是开发人员,因此我可能无法正确表达该帖子,但是可以。

我们使用Gradle进行构建。我知道这是一个非常旧的版本,但这就是我们所拥有的。更新版本可能会打开不同的蠕虫病毒罐。

$ ./gradlew --version

------------------------------------------------------------
Gradle 2.9
------------------------------------------------------------

Build time:   2015-11-17 07:02:17 UTC
Build number: none
Revision:     b463d7980c40d44c4657dc80025275b84a29e31f

Groovy:       2.4.4
Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM:          1.8.0_181 (Oracle Corporation 25.181-b13)
OS:           Mac OS X 10.13.6 x86_64

我有2个模块,模块核心和模块应用,而模块应用取决于模块核心,所以我在我的模块应用/build.gradle文件中有此

dependencies {
  compile project('module-core')
  ...
}

module-core具有以下属性文件

module-core/src/main/resources/application-production.properties

并具有以下键/值对

key1=value1
key2=value2

module-app具有以下属性文件,并且为 EMPTY 。请注意,路径略有不同-它的路径中有一个“ config”子目录,而模块核心则没有!

module-app/src/main/resources/config/application-production.properties

module-app然后具有以下XML文件,该文件指示(根据开发人员的了解)如何聚合每个属性文件中的键/值对

module-app/src/main/resources/admin-properties.xml

并具有以下节

<beans profile="production">
    <context:property-placeholder
            location="classpath:application.properties,classpath:config/application.properties,classpath:application-production.properties,classpath:config/application-production.properties"
            ignore-unresolvable="true"/>
</beans>

我做完

$ ./gradlew clean build -x test

module-app.war中有一个module-core.jar文件

$ cd /path/to/module-app.war
$ tar -xvf module-app.war
$ cat ./WEB-INF/lib
$ tar -xvf module-core.jar
$ cat application-production.properties

它具有正确的值。

key1=value1
key2=value2

但是,当我们通过tomcat运行我们的module-app.war应用程序时,如日志中所示,这些值不会被获取。

我想念什么?

0 个答案:

没有答案