我有一个 multiModule Maven 项目,我正在努力将它转换为 gradle。大部分转换已完成。我遇到了最后一个场景,我在根 Pom
中定义了一个属性<properties>
<version.DataSource>Datasource1</version.DataSource>
<\properties>
下面是我的项目结构:
TestApp
|--> buildsrc
| |--> src
| | --> test.java-conventions.gradle
| |--> build.gradle
|--> common-module
| |--> src
| |--> resources
| |--> build.gradle
| |--> Pom.xml
|--> main-module
| |--> src
| |--> resources
| |--> resources.properties
| |--> build.gradle
| |--> Pom.xml
|--> ejb-module
| |--> src
| |--> resources
| |--> persistence.xml
| |--> build.gradle
| |--> persistence.xml
| |--> pom.xml
|--> war-module
| |--> src
| |--> resources
| |--> resources.properties
| |--> build.gradle
| |--> Pom.xml
|--> ear-module
| |--> src
| |--> build.gradle
| |--> Pom.xml
|--> settings.gradle
|--> build.gradle
|--> gradle.properties
|--> Pom.xml
所以在 resources.propertis 中我们有一个键:datasourceName = ${version_DataSource} 在 main 和 war 模块中 在 ejb 模块中,persistence.xml 使用相同的 JTA 数据源:
<jta-data-source>${version_DataSource}</jta-data-source>
在 Maven 中,所有属性和 xml 文件都能够访问该字段,但是当我在 build .gradle 或 gradle.properties 中声明时,它没有按预期工作
我已经在 test.java-conventions.gradle 中试过了
ext {
version_DataSource = 'DataSource1'
}
还尝试用作 project.ext
我收到数据源为空错误