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






Comment +0

테스트 환경 : MacOSX (High Sierra) + Oracle JDK9 + Eclipse (Oxygen)


Eclipse 설치 후 실행하면, "An error has occurred, see the log file null" 이라는 메세지가 나오면서 eclipse 가 강제로 종료되는 현상이  발생


해결 방법


아래 경로에 가서


/Applications/Eclipse.app/Contents/Eclipse 


eclipse.ini 파일을 편집


-vmargs 항목에 파라미터를 하나 추가해 준다.

-vmargs

--add-modules=java.se.ee 


이렇게 해서 해결이 되는 경우가 대부분인데 해결이 되지 않는 경우도 있다고 함..





Comment +0

개발 환경 

JDK 1.8.x

MySQL


먼저 Eclipse 를 실행합니다.

참고로 저는 최신버전 LUNA를 사용중입니다.

Help -> Install New Software 선택

Find 에 hibernate 을 입력하여 검색

JBoss Tools 를 설치합니다.


그리고 eclipse에 hibernate을 사용할 프로젝트를 생성합니다. (여기서는 편의상 HibernateDB001 java 프로젝트)


MySQL DB와의 연결을 위해서 JDBC 드라이버를 build path 에 추가합니다. 

MySQL JDBC 드라이버는 아래 링크에서 다운로드가 가능합니다.

http://dev.mysql.com/downloads/connector/j/


저는 프로젝트에 lib 폴더를 만들어서 jar 파일을 추가하고 build path에 추가하였습니다.


그리고 Hibernate prospect 에서 config 파일을 생성합니다.

위의 아이콘을 클릭하거나 오른쪽 클릭하여 config 파일을 생성합니다.



hibernate.cfg.xml 파일을 생성합니다.


DB설정에 맞게 필요한 정보를 입력하고 Finish 를 누릅니다.


최종 설정은 대략 다음과 같습니다.



위의 정보를 제대로 입력했다면 Database에 아래와 같이 DB 정보가 나오게 됩니다.

Eclipse 위쪽의 Hibernate Code Generation 아이콘을 눌러서 코드를 생성합니다.

필요한 옵션은 다음과 같습니다.



ps. 내용 추가합니다.

hibernate 코드를 생성하려고 할때, hibernate.cfg.xml 을 파싱할 수 없다는 에러가 나는 경우가 있습니다.

Configuration 부분에 classpath에 에러 표시가 나타나면서 파싱이 안되는 경우인데요,

(Could not parse configuration 등의 에러..)

이 경우 hibernate.cfg.xml 파일의 헤더부분에 나오는 http://hibernate.sourceforge.net 부분을 http://www.hibernate.org/dtd 로 변경하면 문제가 해결됩니다. 구글링 결과 네트워크 연결이 되지 않거나 해당 사이트에 접속이 되지 않는 경우 생기는 문제라고 하니, parsing 에러가 나타나는 경우 위와 같이 변경하면 해결이 되는 경우가 있으니 참고하세요.









Comment +0

@ 준비물

아래 링크에서 적당한 버전의 Java SDK 다운로드 합니다.

http://www.oracle.com/technetwork/java/javase/downloads/index.html

 

아래 링크에서 적당한 버전의 eclipse 다운로드 합니다.

http://www.eclipse.org/downloads/

 

아래 링크에서ant 다운로드 합니다.

http://ant.apache.org/bindownload.cgi

 

아래 링크에서 jsch 다운로드 합니다.

http://www.jcraft.com/jsch/

 

@ 설치

Java default 폴더에 설치하는 것을 권장합니다.

eclipse My Document 압축을 풀면 됩니다.

ant eclipse 설치 경로 아래 있는 plugins 폴더에 압축을 풀어줍니다.

jsch ant 폴더 아래 있는 lib 폴더에 jar 파일만 추가합니다.

 

eclipse 실행합니다.

Window > Preferences > Ant > Runtime

Classpath 탭에 있는 Ant Home 버튼을 눌러서 압축을 ant 경로를 지정합니다.

Comment +0