hyeonga_code
Java_04_Java Platform, JCP, 자바 이클립스 설치, 이클립스 연동, 환경 설정하기 본문
-- Eclipse
- Java Platform
- 가전제품을 제어하기 위한 언어로 개발
- 하나의 코드로 다양한 환경에서 실행할 수 있는 환경을 제공하고 분산 환경을 지원
- 분산 환경에서 가장 큰 효율
- WEB 환경_ 기능별로 구분
- DB 서버
- 엔진
- 웹 어플리케이션 서버_WAS
- 웹서버 _ 요청 담당
- 웹 브라우저
- 1) 자바 언어를 컴파일러를 통해 2) 바이트 코드_Java bytecode로 번역합니다.
2) 바이트 코드를 자바 가상 머신_JVM_Java Virtual Machine으로 3) 바이너리 코드로 번역합니다.
3) 바이너리 코드를 4) 이진수로 번역합니다.
- JCP_Java Community Process _ 오픈 소스 관리
- JCP에서 spec_설계도를 만듭니다.
- Oracle java
- MS java
- Adoptium java
- Spring Framework
- spec이 동일하기 때문에 어떤 프로그램으로 작성해도 호환이 가능합니다.
- 파일 다운시 위쪽에 document 파일이 있습니다.
- 가이드라인 입니다.
- JCP에서 만든 spec이 JSR을 구현
- JDK, JRE, JVM을 spec에 따라 제공합니다.
- 종류
- Java SE_Standard Edition
- 응용 프로그램 제작에 필요한 기본 클래스를 제공
- 어플리케이션이 포함됩니다.
- 프로그램이 공유되지 않습니다.
- pc 1 대에서 운영되는 프로그램을 작성할 때 사용합니다.
- 대규모 시스템의 관리가 어렵습니다.
- jdbc : 단일 해결
- Java EE_Enterprise Edition
- 웹 개발 및 네트워크 분산 처리 등 대형 응용프로그램 제작에 필요한 클래스 제공
- 웹 어플리케이션이 포함됩니다.
- 여러 사용자가 동시에 사용하는 프로그램을 작성할 때 사용합니다.
- 프로그램을 공유할 수 있습니다.
- jdbc : 다중 해결
- 대신 spring framework 를 사용합니다
> spring boots가 새로 나왔습니다.
- 기본적으로 3 개로 구성되어 있습니다.
1) web client : 서비스를 이용
2) web server : 서비스를 제공
3) DB server : 서비스의 데이터를 저장
- Java ME_Micro Edition
- 모바일 등의 임베디드_Embedded 에 적합한 클래스 제공
- pc 보다 사양이 낮고 인터페이스가 불편한 것에 사용합니다
- 보다 안드로이드가 더 많이 사용됩니다.
- 공장 자동화 등은 안드로이드, C를 공부하는 것이 좋습니다.
- 잘 안쓰이는 이유
- 저장 공간/메모리가 적습니다.
- 인터넷에 항상 연결되어 있는 것을 보장하지 않습니다.
-- Java EE Eclipse
'https://www.eclipse.org/downloads/packages/'
- Download x86_64를 다운받으면 프로그램이 다운받아지므로 Download package를 다운받아야 합니다.
- 3개월마다 새로운 버전이 출시됩니다.
- third party 프로그램이 개발될 시간이 필요하므로 최신 버전을 잘 사용하지 않습니다.
- 1년 정도 이전 버전을 사용합니다.
- 오른쪽 하단 MORE DOWNLOADS
- Eclipse 2022-09(4.25) 선택합니다.
- Eclipse IDE for Enterprise Java and Web Developers
- Installer가 아닌 아래 Package를 다운받아 사용합니다.
- 압축 풀기
- eclipse 폴더 이름 eclipseJAVA로 작성합니다.
- myJAVA 폴더를 생성하여 작업하는 파일을 저장합니다.
- 메모리가 허용하는 한 사용하는 언어에 따라 이클립스를 사용할 수 있습니다.
eclipseJSP > myJSP
eclipseHTML > myHTML
eclipseSpring > mySpring
- eclipse.exe 파일 바탕화면에 바로가기 생성하여 원하는 환경으로 바로 실행할 수 있습니다.
- workspace를 생성한 myJAVA 폴더로 설정 후 launch
-- Eclipse JDK 연동
3. eclipse, jdk 연동하기
3.1 'eclipse.exe' 바로가기 바탕화면에 생성하기
- '.java' 확장자 파일은 바이트 코드입니다.
- eclipse는 '.java' 확장자 파일을 생성하기 위한 프로그램입니다.
- '.java' 확장자 파일을 JVM에서 실행하여 OS로 결과값을 넘겨줍니다.
- JVM_Java Virtual Machine
- 바이트 코드를 해석할 수 있습니다.
- JDK와 JRE를 통해 언어를 바이트 코드로 변경합니다.
- 컴퓨터를 뜻합니다. CPU, Memory
- 가상의 cpu, memory를 생성하여 또 다른 컴퓨터를 운영하는 것처럼 사용할 수 있습니다.
- 메모리 관리에 중점을 두고 실행됩니다.
- 프로그램 운영 중 다운되는 경우가 생길 수 있으므로 메모리를 미리 체크하는 것이 좋습니다.
1) 시작 메뉴 > 시스템 > 정보 > '설치된 RAM' : 16 GB
- RAM이 높을수록 성능이 좋아집니다.
- 최소 16 GB로 사용하는 것이 좋습니다.
- CPU : 컴파일 속도
- RAM : 실행 속도
3.2 'eclipse.ini' 메모장으로 실행
- RAM 크기가 16 GB인 경우 Xms1024m
- RAM 크기가 8 GB인 경우 Xms512m
- 최대한 많은 메모리를 할당하면 프로그램 작성 시에 편리합니다.
=====
-startup
plugins/org.eclipse.equinox.launcher_1.6.400.v20210924-0641.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.2.700.v20221108-1024
-product
org.eclipse.epp.package.jee.product
-showsplash
org.eclipse.epp.package.common
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vm
plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_17.0.6.v20230204-1729/jre/bin
-vmargs
// JDK, JRE 버전에 따라 수정할 수 있습니다.
-Dosgi.requiredJavaVersion=17
-Dosgi.instance.area.default=@user.home/eclipse-workspace
-Dosgi.dataAreaRequiresExplicitInit=true
-Dorg.eclipse.swt.graphics.Resource.reportNonDisposed=true
-Dsun.java.command=Eclipse
// eclipse 사용 메모리입니다.
-Xms256m // 최소 메모리 > 1024m 로 변경합니다.
-Xmx2048m // 최대 메모리
-XX:+UseG1GC
-XX:+UseStringDeduplication
--add-modules=ALL-SYSTEM
> 수정 후 저장하면 자동으로 적용됩니다.
3.3. Eclipse 프로그램 실행하기
- 'Select a directory as workspace'
- Eclipse 파일 구조
- D 드라이브 > labs
> JDK
> Eclipse
> workspace _ 공통 환경을 조성하는 것입니다.
- eclipse를 실행하는 공간이 아닙니다.
> 원하는 위치에 'workspace' 폴더를 생성한 뒤 선택합니다.
> Launch
> 실행됩니다.
- 실행 후, 'workspace' 폴더 안에 '.metadata' 폴더가 생성되어 있습니다.
- '.metadata'에서 공통된 환경을 불러와 작업이 진행됩니다.
- 글꼴 크기 변경
Tab > Window > Preferences
> General > Editors > TextEditors
> 'Colors and Fonts' > 'Text Font' > Edit
- 코딩에서 많이 사용하는 폰트
- d2 coding
https://github.com/naver/d2codingfont
- D2Coding-Ver1.3.2-20180524.zip 다운
- 압축 해제
- D2CodingAll > 'D2Coding-Ver1.3.2-20180524-all.ttc'
> 우클릭 > 모든 사용자에게 설치
-------------------- Eclipse 환경설정 ----------------------
3.4 환경 설정
> Windows > Preferences
- Java 관련
- Java : JDK가 관련된 곳입니다.
- Java EE
- Java Persistence
> Java > Installed JREs
- 'jre(default)' : 기본으로 설치되어있는 파일이지만 사용하려는 버전과 다릅니다.
> Add > Standard vm > 'jdk-11.0.19+7' 폴더에 들어간 후 선택합니다.
'000.jar' 파일이 추가됩니다.
> Finish
> 'jdk-11.0.19+7' 추가한 jdk 파일로 체크합니다.
> Apply / Apply and Close
3.5 .msi 파일로 설치하기 > 또 다른 프로그램이 설치되는 것입니다.
> Next > Next > Install
- jdk 파일이 두 개가 된 것입니다.
- eclipse에 충돌이 발생하지 않습니다.
- 3.4 에서 jdk 설정을 했기 때문입니다.
3.6 확인해보기
Window > Preferences > Java > Compiler
- JDK Compliance > Compiler compliance level : 17 (기본 설정값)
> 11 로 설치했으므로 11 로 변경합니다.
- 버전이 다른경우, spec에 차이가 생겨서 오류가 발생할 수 있습니다.
>>> 모든 환경 설정이 완료되었습니다.
3.7 plug-in 설치하기
> Help > Eclipse MarketPlace 실행
- 'popular' > 'Sprinc Tools 4' > Spring Framework 로 진행할 확률이 높습니다.
- 'Installed' : 설치된 파일 목록
> 'Ansi Escape in Console' 검색 > install
- Logo 색을 보기 좋게 만드는 기능입니다.
> 'I accept the terms of the license agreement' > Finish
> Restart Now
- MarketPlace에 없는 경우 Help > 'Install New Software' 에서 설치해야 합니다.
3.8 Workspace 전역 환경 설정하기
> Windows > Preferences
> General > 'Show heap status' 체크
- 중앙 하단에서 메모리를 확인할 수 있습니다.
- '사용중인 메모리' of '총 메모리 공간'
- JVM은 자동으로 메모리를 비워주는 기능이 있습니다.
- 메모리의 쓰레기 용량은 옆의 '비우기'를 클릭하여 수동으로 비워주어야 합니다.
> Appearance > Theme
- Theme : 배경 색
> Color and font theme > Basic > Font Size
> Workspace
- Text file encoding : UTF-8
- ISO-8859-1 :
- US-ASCII :
- UTF-16 :
- UTF-16BE :
- UTF-16LE :
- UTF-8 : 한글 포함/ 가장 많이 사용되는 Encoding 방식입니다.
- CPU는 이진수만을 취급합니다.
- 숫자가 아닌 다른 문자를 이진수로 변환하는 코드입니다.
- Encoding : 이진수로 변환하는 것입니다.
- 소리는 숫자가 아니므로 encoding해야 합니다. > mp3
- 영상은 숫자가 아니므로 encoding해야 합니다. > mp4
-- 콘솔 창에서 한글이 깨져서 출력되는 경우 > MS949 직접 입력 > 적용
'Java' 카테고리의 다른 글
Java_06_자바 기본 구문 (0) | 2023.09.09 |
---|---|
Java_05_시작하기 프로젝트, 패키지, 클래스, 기본 출력, 저장하기, 프로젝트 이름 변경, 이클립스로 자바 실행 (0) | 2023.09.08 |
Java_03_오라클 JDK 설치, LTS 버전, JDK17, JDK와 JRE 차이 (0) | 2023.09.07 |
Java_02_자바_이름 규칙, SCOPE 범위 (0) | 2023.09.06 |
Java_01_데이터_Data, 정보화, 전산화, 클라우드, 오브젝트, 클래스, 객체 차이 (0) | 2023.09.06 |