我有像这样的项目结构。
parent
| | |
child1 child2 child3 ....
| |
common
在common
项目中,我想提取child1
和child2
我想将常用属性提取到常见项目的application.properties
但在提取公共属性之后,如果在子项目中,我写的就是:
@Configuration
public class MongoDataConfiguration {
@Value("${spring.data.mongodb.database}")
private String database;
在公共项目的application.properties
中找不到属性:
Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'spring.data.mongodb.database' in value "${spring.data.mongodb.database}"
我怎样才能实现它?
父settings.gradle
:
include 'child1'
include 'child2'
include 'child3'
...
在每个孩子中build.gradle
:
compile project(':common')
如果将常见项目中的文件重命名为commons.properties并写入:
,则可以正常工作 @PropertySource("classpath:commons.properties")
但最好有application.properties
名称。
答案 0 :(得分:0)
实际上你将common-project包含在child1,child2中,你只需要使用注释/admin/users/dashboard
来搜索child1的application.properties中的属性。如果你想获得common-project中的属性,你应该提供一种在公共项目中获取这些属性的方法。