Maven 다중 모듈 프로젝트의 부모 모듈 내의 config 폴더에서 Spring-Boot 속성을로드 할 수 있습니까?

장고 판

config다중 모듈 프로젝트의 상위 모듈 내의 폴더에서 여러 Spring-Boot .yml 구성 파일을로드 할 수 있습니까?

따라서 구조는 다음과 같습니다.

parent-module/
  pom.xml
  config/
    application-prd.yml
    application-dev.yml
  module1
    pom.xml
    src/main/resources/
      logback-spring.xml
      bootstrap.yml

이것이 가능한가? 어떻게 할 수 있습니까?

따라서 다중 모듈 프로젝트의 루트 폴더에서 실행하면 다음 명령을 사용합니다.

mvn -pl module1 spring-boot:run
   OR
mvn spring-boot:run

그리고 config폴더가 클래스 경로에 포함 되기를 바랍니다 . 나는 이것을 시도하고 있지만 작동하지 않습니다. 내가 뭔가를 놓치고 있습니까?

우리는 이것이 사실이라는 것을 압니다. Child POMs inherit properties, dependencies, and plugin configurations from the parent.그러나 그것이 {parent}/config/application.yml이미 클래스 경로에 있다는 것을 의미하지 않습니까?

증명에 사용할 예제 프로젝트 : https://github.com/djangofan/spring-boot-maven-multi-module-example . 그것을 복제하고 해결할 수 있다고 생각되면 수정하십시오.

아흐메드 레즈 크

코드를 작성할 필요가 없습니다. 이를 위해 Exec Maven Plugin을 사용할 수 있습니다. 상위 모듈에 플러그인을 추가합니다.

<build>
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>exec-maven-plugin</artifactId>
      <version>1.6.0</version>
      <configuration>
        <mainClass>PACKAGE.MODULE_MAIN_CLASS</mainClass>
        <arguments>
          <argument>--spring.profiles.active=dev</argument>
        </arguments>
      </configuration>
    </plugin>
  </plugins>
</build>

그런 다음 응용 프로그램을 시작할 때마다 mvn install한 번 실행 mvn exec하십시오.

mvn exec:java -pl module1

다중 모듈 프로젝트의 Maven 목표에 대한 자세한 내용은이 답변 https://stackoverflow.com/a/11091569/512667을 확인 하십시오 .

이를 구성하는 또 다른 방법은 다음과 같으며 workingDirectoryarg 가 필요합니다 .

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <mainClass>com.example.Application</mainClass>
        <workingDirectory>${maven.multiModuleProjectDirectory}</workingDirectory>
        <arguments>
            <argument>--spring.profiles.active=dev</argument>
        </arguments>
    </configuration>
</plugin>

이 경우 다음을 실행하십시오.

mvn spring-boot:run -pl module1

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관