개요
라이브러리 (.jar 파일) 을 추가하는 방법에 대해서 이야기 해볼까 합니다.
살펴보기
Java 환경에서 라이브러리 를 추가하는 방법은 사실 다양합니다.
그러나 가능하다면, 소스 쪽에 추가하는 방법을 가장 추천하고. (그래야 관리가 되기 때문이죠)
급한 경우에는 다양한 방법을 활용할 수 있습니다.
CASE 1. Java 에 추가한다.
Case 1. Java 에 다이렉트로 추가하기. (무시무시한 방법)
아래의 경로에 넣어주기 (경로는 조금 다를 수 있습니다)
* C:\Program Files\Java\jdk1.6.0_22\jre\lib\ext
* C:\Program Files\Java\jre6\lib\ext
실행을 하려면 JRE 경로에도 추가해주는 것이 좋습니다.
CASE 2. 톰캣에 넣는다
Case 2. 톰캣 사용 중이라면, 톰캣에 추가 (두번째로 후덜덜한 방법)
* 톰캣 쪽의 lib 폴더 밑에 추가
CASE 3. 웹 어플리케이션에 넣는다.
Case 3. 웹 소스 어플리케이션 언저리에 추가 (권장하는 방법)
* WEB-INF/lib
CASE 4. 안드로이드에서 넣는다.
Case 4. 안드로이드 환경일 경우에.
* libs 폴더 아래에 추가하거나,
* maven 설정으로 셋팅
이해하기
이해를 돕고자 내용을 추가합니다.
(어플리케이션 에서)
이클립스, 안드로이드 스튜디오 등의 개발 도구를 이용해서 개발할 때에는, 도구 자체에서 jar 를 셋팅해주고 인식시켜주면 그만입니다. 일단 읽어들이면, 있다는 가정하에 개발이 가능하게 됩니다.
(그냥 java 개발 에서)
개발 도구 없이 java 를 개발하려고 한다면, 환경 자체에 jar 가 로딩이 되어야만 합니다. 이 경우는 jdk 에 셋팅을 해줘야 할 것 같은 느낌이 올 겁니다. 컴파일은 했는데 실행을 하려면? jre 에 jar 가 있어야 할 것입니다.
(웹 어플리케이션 에서)
웹 어플리케이션에서도 개발 도구에 의지한다면, 개발 단계에서는 개발 도구에서 jar 를 인식하고 있으면 상관이 없습니다. 문제는 서버에서 구동하게 될 때에, 라이브러리가 없기 때문에 문제를 일으킬 수 있습니다. 쉽게 생각할 수 있는 방법은 웹 서버 (WAS) 에 라이브러리를 넣어주는 방법입니다. 그리고 더 나아가서 jre 와 jdk 에 넣어주는 방법도 있습니다. (참고. WAS 또는 WAS 설정에 따라서는 실시간으로 재컴파일을 하는 경우가 있기 때문에, jdk 에도 라이브러리가 있어야 할 수 있음)
그러나 이 방법들은 웹 어플리케이션 끼리의 충돌을 야기시킬 수 있습니다. 그런 이유로 인해서 '웹어플리케이션 경로/WEB-INF/lib' 같은 곳에 라이브러리 를 갖다 넣을 수 있는 방법을 찾게 되었습니다.
(안드로이드 OS 에서)
이제... 이게 어렵습니다. 위의 내용을 이해했다면, 안드로이드 내의 라이브러리는 핵심적인 것은 Java 의 라이브러리 위치에 얹어져 있고, 어떤 것은 안드로이드 의 라이브러리 위치에 얹어져 있을 것을 상상해 보실 수 있습니다. (아마도 안드로이드 SDK 에 포함되어져 있겠죠)
앱 에만 사용되는 것은 앱 에 얹어져 있거나, cache 같은 곳에 있을 수 있겠죠.
여기에서 궁금증이 생기신다면, 점점 안드로이드 를 이해하는 데에 도움이 되실 수 있습니다. 저는 크게 흥미를 못 느끼는 관계로... (다른 거 하느라 바빠요...)
여기 링크에 설명이 조금 있습니다.
https://stackoverflow.com/questions/39163015/android-studio-where-the-library-classes-are-stored
사실 이것보다도 안드로이드 내부에서 라이브러리 들을 어떻게 의존성 관리하고 있을지 궁금해지기는 하는데... 일단 이 글은 여기서 마무리 짓도록 하겠습니다 :)
(급 마무리)
'개발 > 자바 Java' 카테고리의 다른 글
rs.getDate 와 rs.getTimestamp() 의 차이 (0) | 2011.02.17 |
---|---|
JAVA_변수 형 변환 (0) | 2011.01.31 |
[JSP] 한글 파라미터 처리 (0) | 2011.01.04 |
JAVA_JDK 환경변수 셋팅 (0) | 2010.11.25 |
[자바 Java] 파일 업로드 (0) | 2010.11.05 |
[JSP] REQUEST/RESPONSE Header/Agent 정보 확인하기 예제 (0) | 2010.11.02 |
[Java] 오늘 일자 구하기 (0) | 2010.10.26 |
자바 큰 따옴표 (0) | 2010.10.26 |