๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์นดํ…Œ๊ณ ๋ฆฌ ์—†์Œ

์ดํด๋ฆฝ์Šค(Eclipse) ์ž๋ฐ” ํ”„๋กœ์ ํŠธ๋ฅผ ์›น ํ”„๋กœ์ ํŠธ๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ

by 5566 2023. 8. 16.

1. ์ดํด๋ฆฝ์Šค(Eclipse)์™€ ์›น ํ”„๋กœ์ ํŠธ์˜ ๊ฐœ์š”

์›น ํ”„๋กœ์ ํŠธ๋ž€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ํŒŒ์ผ๊ณผ ํด๋” ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๋Š” ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค. ์ดํด๋ฆฝ์Šค๋Š” ์ž๋ฐ” ๊ธฐ๋ฐ˜์˜ ํ†ตํ•ฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ(IDE)๋กœ, ๋‹ค์–‘ํ•œ ์–ธ์–ด์™€ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ดํด๋ฆฝ์Šค๋ฅผ ์ด์šฉํ•˜๋ฉด ํšจ์œจ์ ์œผ๋กœ ์ž๋ฐ” ๊ธฐ๋ฐ˜์˜ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์œผ๋กœ ์ดํด๋ฆฝ์Šค์—์„œ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์›น ๊ด€๋ จ ๊ธฐ์ˆ ๊ณผ ํ”„๋ ˆ์ž„์›Œํฌ์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. HTML, CSS, JavaScript์™€ ๊ฐ™์€ ํ”„๋ก ํŠธ์—”๋“œ ๊ธฐ์ˆ ๊ณผ Java, JSP, Servlet๊ณผ ๊ฐ™์€ ๋ฐฑ์—”๋“œ ๊ธฐ์ˆ ์„ ์ ‘๋ชฉํ•˜์—ฌ ๋™์ ์ธ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ์ดํด๋ฆฝ์Šค์—์„œ ๊ธฐ์กด์˜ ์ž๋ฐ” ํ”„๋กœ์ ํŠธ๋ฅผ ์›น ํ”„๋กœ์ ํŠธ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•œ ์„ค์ •๊ณผ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€, ๊ทธ๋ฆฌ๊ณ  ์ดํด๋ฆฝ์Šค์—์„œ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๋””๋ฒ„๊น…ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ดํด๋ฆฝ์Šค๋ฅผ ์ด์šฉํ•œ ์›น ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ ๊ธฐ๋ณธ์ ์ธ ์ดํ•ด๋ฅผ ๊ฐ–๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

2. ์ดํด๋ฆฝ์Šค์—์„œ ์ž๋ฐ” ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ธฐ

์ดํด๋ฆฝ์Šค๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์ƒˆ๋กœ์šด ์ž๋ฐ” ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

  1. ์ดํด๋ฆฝ์Šค๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  2. ๋ฉ”๋‰ด์—์„œ 'File'์„ ์„ ํƒํ•œ ํ›„ 'New'๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  3. 'Project'๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  4. 'Java Project'๋ฅผ ์„ ํƒํ•œ ํ›„ 'Next'๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  5. ํ”„๋กœ์ ํŠธ์˜ ์ด๋ฆ„์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. (์˜ˆ: MyJavaProject)
  6. 'JRE' ์˜ต์…˜์—์„œ ์‚ฌ์šฉํ•  ์ž๋ฐ” ์‹คํ–‰ ํ™˜๊ฒฝ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ค์ •ํ•ด๋„ ๋ฉ๋‹ˆ๋‹ค.
  7. 'Source folder'์— ์†Œ์Šค ์ฝ”๋“œ ํŒŒ์ผ๋“ค์ด ์œ„์น˜ํ•  ํด๋” ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ๋Š” 'src'๋กœ ์„ค์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  8. ๋‹ค๋ฅธ ์„ค์ •๋“ค์„ ์ˆ˜์ •ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ํ•ด๋‹น ์˜ต์…˜์„ ์„ ํƒํ•˜๊ณ  ์„ค์ •์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  9. 'Finish'๋ฅผ ํด๋ฆญํ•˜์—ฌ ์ž๋ฐ” ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์ด์ œ ์ดํด๋ฆฝ์Šค์—์„œ ์ž๋ฐ” ํ”„๋กœ์ ํŠธ๊ฐ€ ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 'src' ํด๋” ์•„๋ž˜์— ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ณ , 'bin' ํด๋”์— ์ปดํŒŒ์ผ๋œ ํด๋ž˜์Šค ํŒŒ์ผ์ด ์ƒ์„ฑ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ดํด๋ฆฝ์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ์ž๋ฐ” ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ณ  ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

3. ์ดํด๋ฆฝ์Šค์—์„œ ์›น ํ”„๋กœ์ ํŠธ๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ

์ดํด๋ฆฝ์Šค์—์„œ ๊ธฐ์กด์˜ ์ž๋ฐ” ํ”„๋กœ์ ํŠธ๋ฅผ ์›น ํ”„๋กœ์ ํŠธ๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

  1. ์ž๋ฐ” ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•œ ์ƒํƒœ์—์„œ ๋งˆ์šฐ์Šค ์˜ค๋ฅธ์ชฝ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ 'Properties'๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  2. 'Properties' ์ฐฝ์—์„œ 'Project Facets'๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  3. 'Project Facets' ์ฐฝ์—์„œ 'Dynamic Web Module'์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  4. 'Further Configuration Available' ์˜ต์…˜์„ ์„ ํƒํ•˜๋ฉด ์›น ๋ชจ๋“ˆ ๊ตฌ์„ฑ ์˜ต์…˜์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•„์š”ํ•œ ์„ค์ •์„ ๋ณ€๊ฒฝํ•œ ํ›„ 'OK'๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  5. 'Apply and Close'๋ฅผ ํด๋ฆญํ•˜์—ฌ ๋ณ€ํ™˜์„ ์™„๋ฃŒํ•ฉ๋‹ˆ๋‹ค.

์ด์ œ ์ž๋ฐ” ํ”„๋กœ์ ํŠธ๊ฐ€ ์›น ํ”„๋กœ์ ํŠธ๋กœ ๋ณ€ํ™˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ดํด๋ฆฝ์Šค๋Š” ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•œ ํด๋”์™€ ํŒŒ์ผ์„ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ ์ถ”๊ฐ€์ ์ธ ์„ค์ •๊ณผ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€๊ฐ€ ๊ฐ€๋Šฅํ•ด์กŒ์Šต๋‹ˆ๋‹ค.

4. ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•œ ์„ค์ •๊ณผ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€

์›น ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•ด ์ดํด๋ฆฝ์Šค์—์„œ ๋ช‡ ๊ฐ€์ง€ ์„ค์ •๊ณผ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€๋ฅผ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ผ ์ง„ํ–‰ํ•˜์„ธ์š”.

์›น ํ”„๋กœ์ ํŠธ ์„ค์ •

  1. ์ดํด๋ฆฝ์Šค์—์„œ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•˜๊ณ  ๋งˆ์šฐ์Šค ์˜ค๋ฅธ์ชฝ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ 'Properties'๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  2. 'Properties' ์ฐฝ์—์„œ 'Java Build Path'๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  3. 'Libraries' ํƒญ์„ ์„ ํƒํ•˜๊ณ  'Add Library'๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  4. 'Server Runtime'์„ ์„ ํƒํ•˜์—ฌ ํ˜„์žฌ ์‚ฌ์šฉ ์ค‘์ธ ์„œ๋ฒ„ ๋Ÿฐํƒ€์ž„์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  5. ์‚ฌ์šฉํ•  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋“ค์„ 'Java Build Path'์˜ ๋‹ค๋ฅธ ํƒญ์„ ์ด์šฉํ•˜์—ฌ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์›น ํ”„๋กœ์ ํŠธ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€

  1. ์›น ํ”„๋กœ์ ํŠธ์˜ 'WebContent/WEB-INF/lib' ํด๋”์—์„œ ํ•„์š”ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. ๋‹ค์šด๋กœ๋“œํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํŒŒ์ผ์„ ํ•ด๋‹น ํด๋”๋กœ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค.
  3. ์ดํด๋ฆฝ์Šค์—์„œ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•˜๊ณ  ๋งˆ์šฐ์Šค ์˜ค๋ฅธ์ชฝ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ 'Build Path'๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  4. 'Configure Build Path'๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  5. 'Libraries' ํƒญ์—์„œ 'Add JARs' ๋˜๋Š” 'Add External JARs'๋ฅผ ํด๋ฆญํ•˜์—ฌ ์ถ”๊ฐ€ํ•  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  6. ํ•„์š”ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํŒŒ์ผ์„ ์„ ํƒํ•œ ํ›„ 'OK'๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

์ด์ œ ์ดํด๋ฆฝ์Šค์˜ ์›น ํ”„๋กœ์ ํŠธ๋Š” ํ•„์š”ํ•œ ์„ค์ •๊ณผ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๊ตฌ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ดํด๋ฆฝ์Šค๋Š” ์ž๋™์œผ๋กœ ์ปดํŒŒ์ผ์‹œ ํ•ด๋‹น ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ฐธ์กฐํ•˜๋„๋ก ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

5. ์ดํด๋ฆฝ์Šค์—์„œ ์›น ํ”„๋กœ์ ํŠธ ์‹คํ–‰ ๋ฐ ๋””๋ฒ„๊น…ํ•˜๊ธฐ

์ดํด๋ฆฝ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๋””๋ฒ„๊น…ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ผ ์ง„ํ–‰ํ•˜์„ธ์š”.

์›น ํ”„๋กœ์ ํŠธ ์‹คํ–‰

  1. ์ดํด๋ฆฝ์Šค์—์„œ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  2. ๋งˆ์šฐ์Šค ์˜ค๋ฅธ์ชฝ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๊ณ  'Run As'๋ฅผ ์„ ํƒํ•œ ํ›„ 'Run on Server'๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  3. ์ดํด๋ฆฝ์Šค์— ์„ค์ •๋œ ์„œ๋ฒ„ ๋Ÿฐํƒ€์ž„ ๋ชฉ๋ก์—์„œ ์‹คํ–‰ํ•  ์„œ๋ฒ„๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  4. ์„œ๋ฒ„์— ์›น ํ”„๋กœ์ ํŠธ๊ฐ€ ๋ฐฐํฌ๋˜๊ณ  ์„œ๋ฒ„๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.
  5. ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ http://localhost:ํฌํŠธ๋ฒˆํ˜ธ/ํ”„๋กœ์ ํŠธ๋ช…์œผ๋กœ ์ ‘์†ํ•˜์—ฌ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์›น ํ”„๋กœ์ ํŠธ ๋””๋ฒ„๊น…

  1. ์ดํด๋ฆฝ์Šค์—์„œ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  2. ๋งˆ์šฐ์Šค ์˜ค๋ฅธ์ชฝ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๊ณ  'Debug As'๋ฅผ ์„ ํƒํ•œ ํ›„ 'Debug on Server'๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  3. ๋””๋ฒ„๊น… ๋ชจ๋“œ๋กœ ์„œ๋ฒ„๊ฐ€ ์‹คํ–‰๋˜๊ณ  ๋ธŒ๋ผ์šฐ์ €์—์„œ ํ”„๋กœ์ ํŠธ์— ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค.
  4. ์ดํด๋ฆฝ์Šค์˜ ๋””๋ฒ„๊น… ๊ด€๋ จ ๋„๊ตฌ๋ฅผ ์ด์šฉํ•˜์—ฌ ๋””๋ฒ„๊น…์„ ์ง„ํ–‰ํ•˜๊ณ  ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ƒํƒœ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด์ œ ์ดํด๋ฆฝ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๋””๋ฒ„๊น…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹คํ–‰ ๋ฐ ๋””๋ฒ„๊น… ์ค‘ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ์‹ ์†ํ•˜๊ฒŒ ํŒŒ์•…ํ•˜์—ฌ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋Œ“๊ธ€