Maven 외부 라이브러리 사용하기 : 로컬 jar 사용하기
메이븐을 사용하다보면 특정 라이브러리를 사용해야할 경우가 있다. 서버저장소에 올라가있지 않은 라이브러리들...
외부 라이브러리를 사용하기 위해 방법은 이것뿐인것 같다. 그외 어떤 수단을 써봐도 방법이 없었다.
내가 찾고자 하던 방법은 특정 폴더의 jar 라이브러리를 모두 가져와 반영되게 하고 싶었다... 하지만 전부 직접 작성해줘야 하는 것이 말고는 정보가 없었다.
Ant 는 있는 데. 그래서 설마 있겠지... 했는 데 결국 찾지 못했다. 여유가 생기면 Gradle로 써봐야겠다.
작성법은 어렵지 않다. 다만 귀찮을뿐... 아래와 같이 작성하자.
<dependency>
<groupId>tibero5-jdbc</groupId>
<artifactId>tibero5-jdbc</artifactId>
<version>5.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/webapp/WEB-INF/egov_mei/lib/tibero5-jdbc.jar</systemPath>
</dependency>
다른건 중요하지 않고 scope
와 systemPath
노드만 잘 작성해주면 된다. 그리고 ${project.basedir}
변수는 메이븐에서 지원하는 내장 변수이니 현재 pom.xml
위치의 경로를 의미한다.
[부록] Spring 에서 프레임으로 요청할때
security.xml 에서 아래와 같이 설정해야 한다. <http> 사이에 넣어주면 된다.
<headers>
<frame-options disabled="true"/> <!-- 프레임으로 페이지 허용 DENY | SAMEORIGIN | ALLOW-FROM -->
</headers>
Spring 에서 HTML 프레임으로 요청하면 오류가 발생하고 화면을 볼 수 없다. W3C 접근성 보안으로 인해 차단되는 경우이다. 그래서 보안 설정을 해주면 쉽게 해결할 수 있다.
response.setHeader("P3P","CP='IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT'");