3 개의 모듈이있는 Java 프로젝트가 있습니다.종속성이 아닌 Main jar 파일 경로를 지정하는 방법 JAR
[ ] Utils
----->code
----->pom.xml
[ ] Module B
----->Resources\config.xml
----->code
----->pom.xml
[ ] Module C
----->Resources\config.xml
----->code
----->pom.xml
유틸 모듈 유틸 ModuleB 및 ModuleC 모두 사용 'ReadConfig'기능을 갖는 모듈 A 및 B. 모듈 모두에 대해 의존성이다. 모듈 B와 모듈 C는 리소스 폴더에서 다른 구성을가집니다.
모듈 B와 모듈 C 모두 종속성이있는 독립 실행 형 jar로 실행하고 대상 디렉토리 (jar가있는 디렉토리)에서 config.xml을 읽어야합니다. 이 코드는의 Utils 모듈에
public static final String JAR_PATH = Constants.class.getProtectionDomain().getCodeSource().getLocation().getPath();
public static final String CONFIG_PATH = JAR_PATH.substring(0, JAR_PATH.lastIndexOf('/')) + "/config.xml";
:
현재 내가 통해 설정 파일의 위치를 얻는다.
내가 IntelliJ (및 netbeans) 프로젝트를 실행할 때, JAR_PATH는 Utils 대상 디렉토리입니다. 모듈 A 또는 모듈 B 대상 디렉토리를 가리 키기를 원합니다.
내 질문은 다음과 같습니다
- 이 시나리오에서 가장 좋은 방법은 무엇입니까. 두 모듈이 다른 설정 파일을 사용하는 곳.
- 모듈을 실행할 때 intellij/netbeans를 모듈 A/B를 독립 실행 형 (종속성이있는 jar)으로 만드는 방법 (mvn 어셈블리를 수행하는 경우 : 작동하는 종속성이있는 하나의 jar 파일을 생성합니다. IntelliJ에) 당신이 당신의 항아리 응용 프로그램 파일을 실행 곳에서 디렉토리에서 일부 파일을 읽을 필요가있는 경우
당신이 무엇을 요구하고 있는지 명확하지 않으며,이 두 가지가 어떤 식 으로든 관련되어 보이지 않기 때문에 한 번에 한 가지만 질문하십시오. –