JAVA ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ถํ๊ธฐ
1. JDK ์ค์น
2. IntelliJ IDEA ์ค์น
3. ๊ธฐ๋ณธ ํ๊ฒฝ ์ค์
1. JDK ๋ค์ด๋ก๋ ๋ฐ ์ค์น
๋ฌด๋ฃ๋ก ์ฌ์ฉ ๊ฐ๋ฅํ OpenJDK์ธ Amazon Correto๋ฅผ ๋ค์ด๋ก๋๋ฐ์ ์ค์นํ๋ค. ์ด ์ธ์ ๋ค๋ฅธ Vendor์ ๋ฐฐํฌํ์ ์ฌ์ฉํด๋ ๋ฌด๋ฐฉํ๋ค.
Amazon Corretto๋ ๋ฌด๋ฃ๋ก ์ฌ์ฉํ ์ ์๋ Open Java Development Kit(OpenJDK)์ ํ๋ก๋์ ์ฉ ๋ฉํฐํ๋ซํผ ๋ฐฐํฌํ์ ๋๋ค. Corretto์๋ ์ฑ๋ฅ ๊ฐ์ ๋ฐ ๋ณด์ ์์ ์ฌํญ์ ๋น๋กฏํ ์ฅ๊ธฐ ์ง์์ด ํจ๊ป ์ ๊ณต๋ฉ๋๋ค. Amazon์ ๋ด๋ถ์ ์ผ๋ก ์์ฒ ๊ฐ์ ํ๋ก๋์ ์๋น์ค์์ Corretto๋ฅผ ์คํํ๋ฉฐ, Corretto๋ Java SE ํ์ค๊ณผ ํธํ๋๋ ๊ฒ์ผ๋ก ์ธ์ฆ๋์์ต๋๋ค. Corretto๋ฅผ ์ฌ์ฉํ๋ฉด Linux, Windows ๋ฐ macOS๋ฅผ ๋น๋กฏํ ์ธ๊ธฐ ์๋ ์ด์ ์ฒด์ ์์ Java ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐํ๊ณ ์คํํ ์ ์์ต๋๋ค.
- ์ถ์ฒ : Amazon
https://aws.amazon.com/ko/corretto/
์ URL๋ก ์ ์ํด์ Amazon Corretto 11 ๋ค์ด๋ก๋ ํ๊ธฐ๋ฅผ ํด๋ฆญํ๋ค.
๋ค์ด๋ก๋ ํ์ด์ง์์ ์์ ์ OS์ ๋ง๋ ์ค์นํ์ผ์ ๋ค์ด๋ก๋ ๋ฐ๋๋ค. ์๋์ฐ๋ผ๋ฉด ์ ๊ทธ๋ฆผ์ msi ํ์ผ์ ๋ฐ์ผ๋ฉด ๋๋ค. msi๋ executable installer file์ ์๋ฏธํ๋ค. zip ํ์ผ์ ๋ฐ์์ ์์ถ์ ํ์ด๋ ๋์ง๋ง ์ค์น ํ์ผ์ ์ฌ์ฉํ๋๊ฒ ํธํ๋ค.
์ค์น ๊ณผ์ ์์ ์๋์ผ๋ก ํ๊ฒฝ๋ณ์์ JDK ๊ฒฝ๋ก๊ฐ ์ค์ ๋๊ธฐ ๋๋ฌธ์ด๋ค. ์ค์น ๊ณผ์ ์ค ๋ฐ๋ก ์ค์ ํ ๊ฑด ์๊ณ Next๋ฅผ ๋๋ฌ ์ค์น๋ฅผ ๋ง์น๋ค.
์ค์น๊ฐ ๋๋๋ฉด Command ์ฐฝ์ ๋์ (์คํ -> cmd ์ ๋ ฅ) java -version ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด ์ค์น ๋ฐ ํ๊ฒฝ๋ณ์ ์ค์ ์ด ์ ๋๋ก ์๋ฃ๋๋์ง ํ์ธํ๋ค.
[์ฐธ๊ณ ] JDK ํ๊ฒฝ๋ณ์ ์ค์
1. JAVA_HOME ์ค์
์์ ๊ฐ์ด msi ํ์ผ์ ํตํด ์ค์นํ ๊ฒฝ์ฐ ์ด ํ๊ฒฝ๋ณ์ ์ค์ ๊ณผ์ ์ด ํ์ ์๋ค. ์ด ๋ด์ฉ์ zip ํ์ผ๋ก ์ค์นํ๊ฑฐ๋ ์ฌ๋ฌ ๋ฒ์ ์ JDK๋ฅผ ์ฌ์ฉํ๋ ๋ฑ์ ์ด์ ๋ก ํ๊ฒฝ๋ณ์๋ฅผ ์๋์ผ๋ก ์ค์ ํ๊ณ ์ ํ ๋ ์ฐธ๊ณ ํ๋ค.
์๋์ฐ ํ์๊ธฐ์์ ๋ด PC - ์์ฑ ํด๋ฆญ
์์คํ ์์ฑ ์ฐฝ์์ [๊ณ ๊ธ] ํญ - [ํ๊ฒฝ ๋ณ์] ํด๋ฆญ
์์คํ ๋ณ์ ์์ญ์ ๊ธฐ์กด์ 'JAVA_HOME'์ ๋ฐ๊พธ๋ ค๋ฉด ์ ํ ํ [ํธ์ง]์, ์๋ก ์ถ๊ฐํ๋ ค๋ฉด [์๋ก ๋ง๋ค๊ธฐ] ํด๋ฆญ
๋ณ์ ์ด๋ฆ์ JAVA_HOME์, ๋ณ์ ๊ฐ์ JDK ์ค์น ๊ฒฝ๋ก๋ฅผ ์ ๋ ฅํ๊ณ [ํ์ธ] ํด๋ฆญ
2. Path ์ถ๊ฐ
์์คํ ๋ณ์ ์์ญ์ 'Path' ์ ํ ํ [ํธ์ง] ํด๋ฆญ
[์๋ก ๋ง๋ค๊ธฐ]๋ฅผ ํด๋ฆญํ๊ณ '%JAVA_HOME%\bin' ์ ๋ ฅํ๊ณ [ํ์ธ]์ ํด๋ฆญํ์ฌ ๋ณ์ ์ค์ ์ ๋ง์น๋ค.
2. IntelliJ IDEA ๋ค์ด๋ก๋ ๋ฐ ์ค์น
์ URL์ ์ ์ํด์ Tools - IntelliJ IDEA๋ฅผ ํด๋ฆญํ๋ค.
[DOWNLOAD] ํด๋ฆญ
OS(Windows)๋ฅผ ์ ํํ๊ณ ๋ ๊ฐ์ง ์ต์ Ultimate, Community ์ค ๋ฌด๋ฃ ๋ฒ์ ์ธ Community๋ฅผ ๋ค์ด๋ก๋ํ๋ค.
์ฐธ๊ณ ๋ก java ์น ์ดํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ์ํด์๋ IntelliJ IDEA ์ ๋ฃ ๋ฒ์ ์ด ํ์ํ๋ฐ, ๋ํ๊ต ์ด๋ฉ์ผ ์ธ์ฆ์ ํตํด ์ฌํ์๋ฟ๋ง ์๋๋ผ ์กธ์ ์๋ ๊ต์ก ๋ผ์ด์ผ์ค๋ฅผ ๋ฐ์ ๋ฌด๋ฃ๋ก ์ฌ์ฉํ ์ ์๋ค. ์ด ๋ฐฉ๋ฒ์ ๊ดํด์๋ ์๋ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ์.
Installation Options์์๋ ํ์๋ ๊ฒ์ ์ฒดํฌํ๋ฉด ๋๋๋ฐ, Create Desktop Shortcut์ ๋ณธ์ธ ์ด์์ฒด์ ์ ๋ง๋ ์ต์ (32bit/64bit)์ ์ ํํ๋ค.
์ค์น๊ฐ ์ข ๋ฃ๋๋ฉด ๊ธฐ๋ณธ ์ค์ ์ ์ํด IntelliJ IDEA๋ฅผ ์คํํ๋ค.
3. ๊ธฐ๋ณธ ํ๊ฒฝ ์ค์
1. IntelliJ IDEA ์ด๊ธฐ ์ค์
์ฒ์ ์คํํ๋ฉด IntelliJ ์ค์ ์ Import ํ ๊ฒ์ธ์ง ๋ฌผ์ด๋ณด๋๋ฐ, ํด๋นํ์ง ์์ผ๋ฉด Do not import settings๋ฅผ ์ ํํ๋ค.
UI ํ ๋ง๋ฅผ ์ ํํ๋ค. ์ถํ ๋ณ๊ฒฝ ๊ฐ๋ฅํ๋ค.
๊ทธ๋๋ก [Next: Feature plugins]๋ฅผ ํด๋ฆญํ๋ค.
๋ง์ฐฌ๊ฐ์ง๋ก ๋ณ๊ฒฝ ์์ด [Start using IntelliJ IDEA]๋ฅผ ํด๋ฆญํ๋ค.
2. JDK ์ค์
Configure - Structure for New Projects๋ฅผ ํด๋ฆญํ๋ค.
์ข์ธก ๋ฉ๋ด์์ Project ์ ํ, Project SDK์ ์ค์นํ JDK๋ฅผ ์ ํํ๋ค.
๋ง์ผ ํด๋น ์ต์ ์ด ์๋์ผ๋ก ์๊ธฐ์ง ์์์ ๊ฒฝ์ฐ,
[New] - JDK ํด๋ฆญ
JDK ๊ฒฝ๋ก๋ฅผ ์ง์ ์ ํ/์ ๋ ฅํ์ฌ [OK]๋ฅผ ํด๋ฆญํ๋ค.
์ฐธ๊ณ ๋ก ์ฌ๋ฌ ๊ฐ์ JDK๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์ SDKs ๋ฉ๋ด์์ [+] ๋ฒํผ์ ํด๋ฆญํ์ฌ ์ถ๊ฐํ ์ ์๋ค.
3. VM Option - Encoding ์ค์
์ ์ฌ์ง์ฒ๋ผ output ์ฐฝ์์ ํ๊ธ์ด ๊นจ์ง๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด IntelliJ vm ์ต์ ์ ์ถ๊ฐํด์ค ๊ฒ์ด ๋จ์๋ค.
์ก์ ๊ฒ์์ ์ผ๊ณ (Ctrl + Shift + A) vm์ ์ ๋ ฅํ๊ณ ๊ฒฐ๊ณผ์์ Edit Custom VM Options...๋ฅผ ํด๋ฆญํ๋ค.
๊ทธ๋ฌ๋ฉด ์๋์ ๊ฐ์ด VM option์ ์ค์ ํ๋ ํ ์คํธ ํ์ผ์ด ์ด๋ฆฌ๋๋ฐ,
๋ง์ง๋ง ํ์ -Dfile.encoding=UTF-8์ ์ถ๊ฐํ ๋ค ์ถ๊ฐํ ์ต์ ์ ์ ์ฉํ๊ธฐ ์ํด IntelliJ๋ฅผ ์ฌ๊ธฐ๋ํ๋ค.
๊ทธ๋ฌ๋ฉด ํฅํ ๋ง์ฃผํ๊ฒ๋ ์๋ฒ output์ฐฝ์์ ํ๊ธ์ด ๊นจ์ง์ง์๊ณ ์์๊ฒ ์ถ๋ ฅ๋๋ค.
4. ๊ธฐํ ์ค์
๋ค์ ์ค์ ์ ํ์์ ์ธ ๊ฑด ์๋๋ฉฐ ๊ฐ์ธ์ ์ฑํฅ์ ๋ฐ๋ผ ๋ฌ๋ฆฌํ ์ ์๋ค.
Configure - Settings ํด๋ฆญ
Editor - General - Auto Import ๋ฉ๋ด ์ ํ ํ Add unambiguous imports on the fly, Optimize imports on the fly์ ์ฒดํฌํ์ฌ ์๋ import ๊ธฐ๋ฅ์ ์ผ ๋ค.
Editor - General - Appearance ๋ฉ๋ด ์ ํ ํ Show line numbers ์ต์ ์ ์ฒดํฌํ๋ค.
Editor - General - Code Folding ๋ฉ๋ด ์ ํ ํ Imports, One-line methods, Closures, Generic constructor and method parameters์ ์ฒดํฌ๋ฅผ ํด์ ํ๋ค.
์ด๋ ๊ฒ JDK ์ค์น, IDE ์ค์น, IDE์ JDK ์ฐ๋ ๋ฐ ๊ธฐ๋ณธ ์ค์ ์ ํ๋ฉด ๊ธฐ๋ณธ์ ์ธ java ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ถ์ด ์๋ฃ๋๋ค.
๋๊ธ