Java 是否可以从另一个maven项目访问属性值?
我有一个SpringBoot服务:Java 是否可以从另一个maven项目访问属性值?,java,spring,spring-boot,maven,properties-file,Java,Spring,Spring Boot,Maven,Properties File,我有一个SpringBoot服务: package test; @Service public class TestService { @Value("${service.readTimeout}") private Duration readTimeout; } service.readTimeout未在当前项目的属性文件中声明它链接在一个单独的项目中,所有项目都标记为Maven模块。 此项目如何访问其他属性文件中的值 对于使用该值的项目,未作为依赖项列出或在pom.xml中未提
package test;
@Service
public class TestService {
@Value("${service.readTimeout}")
private Duration readTimeout;
}
service.readTimeout
未在当前项目的属性文件中声明它链接在一个单独的项目中,所有项目都标记为Maven模块。
此项目如何访问其他属性文件中的值
对于使用该值的项目,未作为依赖项列出或在pom.xml
中未提及该项目
Maven是否连接所有声明的模块?是否可以从所有项目访问所有文件?
这里发生了什么?要获取外部资源,您可以使用
文件系统资源
,例如,我有两个项目demo
和demo2
:
因此,我想从demo2
访问demo
应用程序.属性,因此您可以使用以下代码:
Resource resource = new FileSystemResource("absolute path");
// for example : C:\\Users\\Developper\\eclipse workspace\\demo\\src\\main\\resources\\application.properties
Properties props = PropertiesLoaderUtils.loadProperties(resource);
System.out.println(props);
如果您被迫使用注释,您可以尝试:
@PropertySource(“文件:/path/to/propertiesfile”)
:service.readTimeout在哪里配置?@SimonMartinelli在不同的项目中。所有项目都在pom.xml
中标记为模块。它们都是主项目下的子模块。这回答了你的问题吗?是的,但这在我的项目中没有使用。这里没有额外的代码。您必须使用注释?您可以使用@PropertySource(“文件:/path/to/propertiesfile”):您可能希望将其添加到答案中。