Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否可以从另一个maven项目访问属性值?_Java_Spring_Spring Boot_Maven_Properties File - Fatal编程技术网

Java 是否可以从另一个maven项目访问属性值?

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中未提

我有一个SpringBoot服务:

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”):您可能希望将其添加到答案中。