Spring 创建Maven子模块时忽略Application.properties

Spring 创建Maven子模块时忽略Application.properties,spring,spring-boot,maven,Spring,Spring Boot,Maven,在创建了一个Spring Initializer应用程序之后,我在application.properties中使用server.port=9090运行了它,它运行正常。 创建模块(从IntelliJ)后,如果不做任何其他操作,则会忽略application.properties,并尝试在端口8080上作为默认值再次运行 结构如下: 项目公用项为空。 只有maven结构。 谢谢 LE:似乎与子模块的包装有关。粘贴我以前的评论: 我现在发现,由于所有的孩子都有pom,这种奇怪的行为正在发生。没有

在创建了一个Spring Initializer应用程序之后,我在application.properties中使用server.port=9090运行了它,它运行正常。 创建模块(从IntelliJ)后,如果不做任何其他操作,则会忽略application.properties,并尝试在端口8080上作为默认值再次运行

结构如下:

项目公用项为空。 只有maven结构。 谢谢

LE:似乎与子模块的包装有关。粘贴我以前的评论: 我现在发现,由于所有的孩子都有pom,这种奇怪的行为正在发生。没有考虑资源。如果我移除打包标签,它们将被考虑在内,但是maven clean安装将在该子项上抱怨,因为它找不到其他子项的.jar依赖项(因为它们有pom打包)

LLE:最后我发现了问题,我会把它留在这里,也许其他人会碰到它。 所以,我的问题是,除了具有pom打包的父pom.xml之外,还有具有相同打包的childer。当我从子模块中删除了所有这些组件后,一切都很好,包括maven clean安装。
一句话:POM打包仅适用于父模块

添加目录结构您是否在子模块中添加了父POM的标识符?您是否尝试在子模块application.properties文件中添加
server.port=9090
?添加了更多详细信息@EdgarKhachatryan:是的,但结果是一样的。在Maven模块化项目中,最好在根项目中没有源代码。我的意思是,您应该为演示应用程序创建另一个模块,该模块在pom中具有公共maven模块依赖关系。然后可以从根目录构建项目。这应该可以解决问题。我正在使用这样的结构,它是有效的。显然,可执行jar将在演示目标内部创建subfolder@RobertoCanini:谢谢你的最佳实践。的确,你是对的。但是,我现在发现,由于所有的孩子都有pom,这种奇怪的行为正在发生。没有考虑资源。如果我移除打包标签,它们将被考虑在内,但是maven clean安装将在该子项上抱怨,因为它找不到其他子项的.jar依赖项(因为它们有pom打包)。。。