Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.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 Spring启动应用程序,从运行测试时作为依赖项添加的jar的属性文件中读取_Java_Spring_Spring Boot - Fatal编程技术网

Java Spring启动应用程序,从运行测试时作为依赖项添加的jar的属性文件中读取

Java Spring启动应用程序,从运行测试时作为依赖项添加的jar的属性文件中读取,java,spring,spring-boot,Java,Spring,Spring Boot,我有一个spring启动应用程序,它还有另一个spring应用程序作为jar包含在maven依赖项中。在那个jar中,我有一个属性文件 src/main/resources/data.properties 存在另一个文件进行测试 src/test/resources/data.properties 现在,当我运行主应用程序测试时,我希望它使用该jar的src/test/resources下的文件 我尝试在我的测试配置类中执行以下操作。但是它失败了,出现了一个“找不到文件”异常。 有没有办法在

我有一个spring启动应用程序,它还有另一个spring应用程序作为jar包含在maven依赖项中。在那个jar中,我有一个属性文件

src/main/resources/data.properties
存在另一个文件进行测试

src/test/resources/data.properties
现在,当我运行主应用程序测试时,我希望它使用该jar的src/test/resources下的文件

我尝试在我的测试配置类中执行以下操作。但是它失败了,出现了一个“找不到文件”异常。 有没有办法在测试/资源中加载文件

@Configuration
@ComponentScan(basePackages = { "com.app" }, excludeFilters = {
@PropertySource(value = {"file:/myApp/src/test/resources/data.properties"})

您可以从类路径加载属性,而不是从文件加载属性,这也可以解决这样的问题:对于测试,您希望在
test/resources

@PropertySource(值={“classpath:data.properties”})

它不是这样工作的。。。它不是从罐子里读的。。仍然提供找不到的文件例外什么jar文件?您刚才在问题中提到了
src/main/resources/
src/test/resources
。我提到了这一点:我有一个spring启动应用程序,它有另一个spring应用程序作为jar包含在maven依赖项中。在那个jar中,我在src/main/resources/data.properties下有一个属性文件,另外一个文件用于测试src/test/resources/data.properties