2017-04-05 5 views
-1

다른 여러 프로젝트 (WAR (웹 응용 프로그램 예 : application.war) 및 JAR (배치 : 예 : applicationBatch))에서 일반적으로 공유 속성을 포함하는 mvn 프로젝트가 applicationConfig.jar로 패키지되어 있습니다. 항아리)).스프링 초기화 됨 propertiesysourcesplaceholderconfigurer를 사용한 속성이 다른 프로젝트에서 참조되었습니다.

내 applicationConfig.jar에서 이러한 속성을 초기화하는 주석을 사용하여 propertysourcesplaceholderconfigurer을 사용했다

이 applicationConfig.jar 지금 application.war & applicationBatch.jar

1의 pom.xml 년대에 종속성으로 추가됩니다) application.war의 java 코드는 서버 시작 속성의 applicationConfig.jar에서 실행되는 코드로 초기화 된 속성에 액세스 할 수 있습니다. 여기에는 문제가 없습니다.

2) Linux 머신의 명령 행에서 실행되는 applicationBatch.jar은 특성에 액세스 할 수 없습니다. applicationBatch.jar이 실행될 때 속성 초기화 코드가 실행되지 않는 것처럼 보입니다.

누구나 일괄 파일 (applicationBatch.jar)이 명령 줄에서 실행될 때 Jar 파일 (propertysourcesplaceholderconfigurer를 사용하여 속성을 초기화하는 applicationConfig.jar)에 코드가 실행되도록 어떻게 도와 줄 수 있습니까?

코드 조각은 아래 :

applicationConfig.jar : [첨부] [1]

[2]

+0

코드 스 니펫을 공유하십시오. 특히 이러한 속성을 어떻게 참조할까요? –

+0

@NicolasLabrot : 위의 질문 자체에서 applicationConfig.jar에 대한 코드 스 니펫을 추가했습니다. 이것은 단지 의 종속성으로 추가되었습니다. 1) WAR pom.xml -> 잘 작동하여 시작시 applicationConfig.jar을 실행할 수 있습니다. 2) JAR pom.xml ---> 내 applicationConfig.jar에서 실행할 수 없습니다. 상수 파일 – Shindhur

+0

의 각 속성에 대해 스프링 값 주석을 사용하여 초기화 된 속성에 액세스합니다.이 스 니펫을 질문에 포함시킬 수 있습니까? (버팀대 버튼). 내가 올바르게 이해한다면,'getPropertySourcesPlaceholderConfigurer'는'applicationBatch'를 실행할 때 호출되지 않습니다. –

답변

0

봄이 경우 InternalConfig를 관리 [속성 등록 정보 파일에서 주석과 재산을 사용하여 참조] @Import을 사용하여 가져 오거나 기본 패키지 상위가 InternalConfig 인 구성 요소 스캔을 구성했습니다. applicationBatch이 방법 중 하나를 놓친 것 같습니다.

확인할 수 있습니까?