The Pursuit of Happyness

반응형

Java 개발환경을 위해서, JDK 와 Maven 을 사용하여 개발하는 부분에 대해서 정리합니다.


회사 네트워크 환경은, 

1. Firewall 을 사용하며 제한된 인증서를 통해 개발툴에서 https 프로토콜로 필요한 repository 에 접속할 수 없는 상태이며, 

2. Active Directory 로 관리되어 install 하는 프로그램은 Administrator 권한 없이 설치할 수 없는 상태 입니다.


일단 JDK 를 설치해야하는데, Oracle 홈페이지에서 다운로드 받은 JDK 설치 파일은 권한 문제로 설치를 할 수 없는 상태에서 최적의 해결책은 Portable JDK 입니다.

Portable JDK는 portableapps.com 사이트에서 다운로드가 가능합니다.


32bits 버전

https://portableapps.com/apps/utilities/jdkportable

 

64bits 버전

https://portableapps.com/apps/utilities/jdkportable64


PortableApp의 경우 exe형태로 배포되지만 실제로는 압축파일로, 실행시 해당 애플리케이션을 지정한 폴더에 압축을 풀어줍니다.

원래 용도는 USB 드라이브에 필요한 프로그램을 넣어가지고 다녀서 필요할 때 사용하게 하기 위해서 만들어졌지만, 

프로그램을 설치하지 않고 사용해야 하는 환경에서도 사용할 수 있습니다.


Portable JDK는 특이하게도 압축이 풀리고 나서 Oracle 사이트에서 JDK  파일을 다운로드 받아서 해당 폴더를 JAVA_HOME 으로 사용할 수 있게 만들어 줍니다.

Portable JDK는 환경변수 설정이 되지 않기 때문에, eclipse 등의 IDE에서는 JDK 경로를 지정해 주어야 하며, cmd 상에서 이용하기 위해서는 JAVA_HOME 및 PATH를 지정해 주어야 합니다.


다음은 eclipse 를 설치합니다.

eclipse 의 경우 압축만 풀어서 사용하는 버전을 다운로드 받아서 사용합니다.


Java EE 개발자용을 다운로드 해서 압축을 풀어 줍니다.

https://www.eclipse.org/downloads/packages/release/2018-09/r/eclipse-ide-java-ee-developers


eclipse JDK 경로를 지정해 줍니다.

혹시나 JRE만 설치가 되어 환경변수에 등록되어져 있는 경우 아래의 메뉴에서 설정을 변경해 줍니다.


Window > Preferences > Java > Installed JREs > Search (or Add) - 새 경로 지정

Window > Preferences > Java > Installed JREs > Execution Environments : [설치한 JavaSE 버전 선택] > Compatible JREs : [체크 박스 선택]


마지막으로 Maven repository 를 설정합니다.

Maven을 다운로드해서 압축을 풀어서 사용할 수도 있지만, 여기서는 eclipse 기본 플러그인 버전을 사용합니다.


보통 Firewall 로 네트워크를 제한하는 환경에서는 자체 인증서를 사용하는데, 

개발자용 인증서를 따로 제공해 주지 않는 경우 repository 접속시 https 인증서 오류가 나올 수 있습니다.

이 경우 개발용 proxy 서버를 제공해 주면 그것을 사용하면 되지만 제공해 주지 않는다면, 보안상 좋지는 않지만 인증서 오류를 피해서 사용하는 방법이 있습니다.


Maven은 기본 repository 경로를 https 로 제공하고 있으나, http 로 연결해도 필요한 artifact 들을 가지고 올 수 있습니다. 

repository 경로를 변경하기 위해서 Maven 설정 파일인 settings.xml 를 편집합니다.

settings.xml 파일은 .m2 폴더 안에 있어야 하는데, 특별한 설정이 없는 경우 (혹은 처음 세팅하는 경우) settings.xml 파일이 없을 수도 있습니다.

.m2 폴더는 보통 개인 홈 디렉터리에 있습니다. (ex - C:/Users/[사용자계정]/.m2)

settings.xml 에서 mirrors 부분에 다음과 같이 repository 경로를 http 프로토콜로 적어 주면됩니다.



  <mirrors>

    <mirror>

        <id>central-no-ssl</id>

        <name>Central without ssl</name>

        <url>http://repo.maven.apache.org/maven2</url>

        <mirrorof>central</mirrorof>

    </mirror>

  </mirrors>  


settings.xml






반응형