Spring Boot Setup Guide | ඔබේ පළමු Spring Boot project එකට අඩිතාලම දාමු | SC Guide

Spring Boot Setup Guide | ඔබේ පළමු Spring Boot project එකට අඩිතාලම දාමු | SC Guide

ආයුබෝවන් යාළුවනේ! කොහොමද ඉතින්? අද අපි කතා කරන්න යන්නේ ගොඩක් දෙනෙක්ට තියෙන පොදු ප්‍රශ්නයකට විසඳුමක් ගැන. ඒ තමයි Spring Boot කියන ජනප්‍රිය Framework එකත් එක්ක වැඩ කරන්න අවශ්‍ය පරිසරය (development environment) හදාගන්නේ කොහොමද කියලා. ඔයාලා දැනටමත් Java හෝ web development ගැන දන්නවා නම්, Spring Boot කියන්නේ ඔයාලගේ productivity එක අහස උසට වැඩි කරන, අතිවිශාල හැකියාවන් තියෙන powerful tool එකක්. හැබැයි, ඕනෑම දෙයක් වගේ, මේකත් හරියට setup කරගත්තේ නැත්නම් වැඩේ අමාරු වෙන්න පුළුවන්. ඒ නිසා තමයි අද අපි මේක පියවරෙන් පියවර විස්තර කරන්න හිතුවේ.

අද අපි බලමු කොහොමද JDK (Java Development Kit), Maven/Gradle වගේ build tools, සහ IntelliJ IDEA වගේ IDE එකක් ඔයාලගේ computer එකට install කරලා, Spring Boot project එකක් run කරන්න අවශ්‍ය අඩිතාලම දාගන්නේ කියලා. ලංකාවේ අපිට ගොඩක් වෙලාවට මේ වගේ දේවල් වලට හරියට guide එකක් හොයාගන්න අමාරුයිනේ. ඒ නිසා, අද අපි මේක සරලව, ලංකාවේ ව්‍යවහාරයට ගැලපෙන විදියට, නිකන් යාළුවෙක්ට කියලා දෙනවා වගේ කතා කරමු.

ඉතින්, ලෑස්තිද ඔයාලගේ පළමු Spring Boot project එකට අඩිතාලම දාන්න? එහෙනම් වැඩේට බහිමු!

1. Java Development Kit (JDK) එක install කරමු

Spring Boot කියන්නේ Java මත පදනම් වෙලා හදපු framework එකක්. ඒ නිසා, අපිට මුලින්ම ඕන වෙන්නේ JDK එකක්. JDK එක කියන්නේ Java application develop කරන්න අවශ්‍ය tools, libraries, සහ Java Runtime Environment (JRE) එක අඩංගු පැකේජයක්. සාමාන්‍යයෙන්, නවීන Spring Boot projects වලට JDK 17 (LTS – Long Term Support) වගේ stable version එකක් භාවිතා කරන එක තමයි හොඳම දේ.

කොහොමද JDK එක බාගන්නේ?

JDK එක බාගන්න ක්‍රම කීපයක් තියෙනවා. Oracle JDK එක වගේම OpenJDK වගේ free සහ open-source options තියෙනවා. සාමාන්‍යයෙන් development වලට OpenJDK භාවිතා කරන එක තමයි පහසුම සහ recommend කරන ක්‍රමය. අපි අද බලමු OpenJDK එක බාගන්න විදිය.

  • Adoptium (Eclipse Temurin): මෙය OpenJDK සඳහා ඉතා ජනප්‍රිය සහ විශ්වාසදායක ප්‍රභවයක්. ඔවුන්ගේ වෙබ් අඩවියට (adoptium.net) ගිහින් ඔයාගේ operating system එකට (Windows, macOS, Linux) ගැලපෙන JDK 17 (LTS) installer එක බාගන්න.
  • Oracle JDK: මේකත් ගොඩක් ජනප්‍රියයි, හැබැයි commercial භාවිතයට license එකක් අවශ්‍ය වෙන්න පුළුවන්. Oracle වෙබ් අඩවියට (oracle.com/java/technologies/downloads) ගිහින් බාගන්න පුළුවන්.

Installation steps

බාගත්තට පස්සේ, installer file එක run කරන්න. සාමාන්‍යයෙන් "Next", "Next" ගිහින් install කරන්න පුළුවන්. installation path එක මතක තියාගන්න, මොකද අපිට ඒක අවශ්‍ය වෙනවා environment variables set කරන්න.

Environment Variables Set කිරීම (JAVA_HOME සහ Path)

මේක තමයි ගොඩක් අයට අවුල් යන තැන. හැබැයි බය වෙන්න එපා, හරිම සරලයි.

Windows වලට:

  1. Start menu එකේ "Environment Variables" කියලා search කරලා "Edit the system environment variables" open කරන්න.
  2. "System Properties" window එකේ "Advanced" tab එකට ගිහින් "Environment Variables..." button එක click කරන්න.
  3. "System variables" යටතේ "New..." click කරලා පහත විස්තර ඇතුළත් කරන්න:
    • Variable name: JAVA_HOME
    • Variable value: ඔයා JDK එක install කරපු path එක (උදා: C:\Program Files\Eclipse Adoptium\jdk-17.0.x.x-hotspot)
  4. ඊට පස්සේ "Path" කියන variable එක select කරලා "Edit..." click කරන්න.
  5. "New" click කරලා %JAVA_HOME%\bin එකතු කරන්න.
  6. "OK", "OK" click කරලා සියලු window වහන්න.

macOS/Linux වලට:

terminal එක open කරලා පහත commands run කරන්න. ඔයාගේ shell එකට (bash, zsh) අනුව .bash_profile, .zshrc වගේ file එකක් edit කරන්න ඕනේ.

echo 'export JAVA_HOME=/path/to/your/jdk/home' >> ~/.zshrc # OR ~/.bash_profile
echo 'export PATH="$JAVA_HOME/bin:$PATH"' >> ~/.zshrc # OR ~/.bash_profile
source ~/.zshrc # OR source ~/.bash_profile

/path/to/your/jdk/home වෙනුවට ඔයාගේ JDK එක install කරපු path එක දාන්න. (උදා: /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home)

වැඩේ හරියට වුනාද බලමු (Verification)

නව terminal/command prompt එකක් open කරලා පහත commands දෙක run කරන්න:

java -version
javac -version

දැන් ඔයා install කරපු JDK version එක පෙන්නනවා නම්, වැඩේ සාර්ථකයි. නියමයි! JDK installation එක ඉවරයි.

2. Build Tools: Maven හෝ Gradle

Spring Boot project එකක් build කරන්න, dependencies manage කරන්න සහ project එක run කරන්න අපිට build tool එකක් අවශ්‍ය වෙනවා. Java ලෝකයේ ප්‍රධාන වශයෙන් Maven සහ Gradle කියන build tools දෙක තමයි ගොඩක් වෙලාවට භාවිතා වෙන්නේ. මේ දෙකම හොඳයි, හැබැයි Gradle ටිකක් වැඩි flexibility එකක් දෙනවා කියලා කියන්න පුළුවන්. අපි දෙකම බලමු, ඔයාලට කැමති එකක් choose කරන්න පුළුවන්.

Maven install කරමු

Maven කියන්නේ XML-based configuration එකක් භාවිතා කරන පැරණි, නමුත් ඉතා ජනප්‍රිය build tool එකක්.

  1. බාගන්න: Maven Apache වෙබ් අඩවියට (maven.apache.org/download.cgi) ගිහින් binary zip archive (උදා: apache-maven-3.x.x-bin.zip) එක බාගන්න.
  2. Extract කරන්න: බාගත්ත zip file එක ඔයා කැමති තැනකට extract කරන්න (උදා: C:\Program Files\Apache\apache-maven-3.x.x).
    • M2_HOME කියන variable එකක් හදලා value එක විදියට ඔයා Maven extract කරපු path එක දෙන්න. (උදා: C:\Program Files\Apache\apache-maven-3.x.x)
    • Path variable එක edit කරලා %M2_HOME%\bin එකතු කරන්න.

වැඩේ හරියට වුනාද බලමු (Verification):අලුත් terminal/command prompt එකක් open කරලා පහත command එක run කරන්න:

mvn -version

Maven version එක පෙන්නනවා නම්, ඔයා සාර්ථකයි.

Environment Variables Set කිරීම (M2_HOME සහ Path):JDK එකට කරපු විදියටම environment variables set කරන්න.Windows වලට:macOS/Linux වලට:

echo 'export M2_HOME=/path/to/your/maven/home' >> ~/.zshrc # OR ~/.bash_profile
echo 'export PATH="$M2_HOME/bin:$PATH"' >> ~/.zshrc # OR ~/.bash_profile
source ~/.zshrc # OR source ~/.bash_profile

Gradle install කරමු (Optional, නමුත් recommend කරනවා)

Gradle කියන්නේ Groovy-based Domain Specific Language (DSL) එකක් භාවිතා කරන, Maven වලට වඩා නම්‍යශීලී නවීන build tool එකක්.

  1. බාගන්න: Gradle වෙබ් අඩවියට (gradle.org/install) ගිහින් binary-only distribution එක බාගන්න.
  2. Extract කරන්න: බාගත්ත zip file එක ඔයා කැමති තැනකට extract කරන්න (උදා: C:\Program Files\Gradle\gradle-x.x).
    • GRADLE_HOME කියන variable එකක් හදලා value එක විදියට ඔයා Gradle extract කරපු path එක දෙන්න. (උදා: C:\Program Files\Gradle\gradle-x.x)
    • Path variable එක edit කරලා %GRADLE_HOME%\bin එකතු කරන්න.

වැඩේ හරියට වුනාද බලමු (Verification):අලුත් terminal/command prompt එකක් open කරලා පහත command එක run කරන්න:

gradle -v

Gradle version එක පෙන්නනවා නම්, ඔයා සාර්ථකයි.

Environment Variables Set කිරීම (GRADLE_HOME සහ Path):Maven/JDK වලට කරපු විදියටම environment variables set කරන්න.Windows වලට:macOS/Linux වලට:

echo 'export GRADLE_HOME=/path/to/your/gradle/home' >> ~/.zshrc # OR ~/.bash_profile
echo 'export PATH="$GRADLE_HOME/bin:$PATH"' >> ~/.zshrc # OR ~/.bash_profile
source ~/.zshrc # OR source ~/.bash_profile

දැන් ඔයාට කැමති build tool එකක් තෝරාගෙන වැඩ කරන්න පුළුවන්. Spring Boot project එකක් generate කරනකොට ඔයාලට Maven හෝ Gradle අතරින් එකක් තෝරගන්න අවස්ථාව ලැබෙනවා.

3. Integrated Development Environment (IDE) - IntelliJ IDEA

IDE එකක් නැතුව coding කරනවා කියන්නේ, නිකන් අතේ පාරවල් වලින් ගෙයක් හදනවා වගේ වැඩක්. IDE එකක් කියන්නේ code ලියන්න, debug කරන්න, test කරන්න, සහ project එක manage කරන්න අවශ්‍ය සියලු tools එකම තැනකට ගෙනත් දෙන powerful software එකක්. Spring Boot development වලට ගොඩක් දෙනෙක් භාවිතා කරන්නේ IntelliJ IDEA කියන IDE එක. මේකේ Community Edition එක free, සහ Spring Boot development වලට ගොඩක් හොඳයි.

IntelliJ IDEA බාගන්න සහ install කරමු

  1. බාගන්න: IntelliJ IDEA වෙබ් අඩවියට (jetbrains.com/idea/download) ගිහින් "Community" version එක (Windows, macOS, Linux සඳහා) බාගන්න. "Ultimate" version එක pay කරන්න ඕන එකක්, ඒකේ තවත් advanced features තියෙනවා. හැබැයි අදට අපිට Community එක හොඳටම ඇති.
  2. Install කරන්න: බාගත්ත installer file එක run කරන්න. "Next", "Next" ගිහින් install කරන්න. installation කරනකොට Desktop Shortcut, "Add 'Open Folder as Project'" වගේ options select කරගන්න පුලුවන් නම් හොඳයි.

IntelliJ IDEA සකස් කරගැනීම

IntelliJ IDEA install කරලා open කරාට පස්සේ, සමහරවිට මුලින්ම ඔයාලට basic settings ටිකක් adjust කරන්න සිද්ධ වෙයි. Theme එක, font size එක වගේ දේවල් ඔයාගේ කැමැත්තට අනුව හදාගන්න පුළුවන්. IntelliJ IDEA වලට Java, Maven, Gradle සඳහා plugins pre-installed තියෙන නිසා අමුතුවෙන් install කරන්න දෙයක් නැහැ. ඒක තමයි මේ IDE එකේ ලොකුම වාසියක්.

IntelliJ IDEA ඇතුළතින්ම Spring Initializr එකට direct access තියෙනවා. ඒකෙන් පුළුවන් අලුත් Spring Boot project එකක් හදාගන්න. මේකෙන් කාලය ගොඩක් ඉතිරි වෙනවා.

4. Setup එක හරියටම වැඩද කියලා බලමු (Verify කරමු)

දැන් අපි අවශ්‍ය සියලු දේවල් install කරලා ඉවරයි. දැන් බලමු මේ සියල්ල එකට එකතු වෙලා වැඩ කරනවද කියලා. මේ සඳහා අපි Spring Initializr එක භාවිතා කරලා පොඩි Spring Boot project එකක් හදමු.

Spring Boot Project එකක් හදමු

මේක කරන්න ක්‍රම දෙකක් තියෙනවා:

ක්‍රමය 1: IntelliJ IDEA හරහා (Recommend කරනවා)

  1. IntelliJ IDEA open කරන්න.
  2. "New Project" click කරන්න.
  3. වම් පැත්තේ panel එකෙන් "Spring Initializr" select කරන්න.
  4. දකුණු පැත්තේ panel එකේ project settings ටික හදන්න:
    • Project SDK: ඔයා install කරපු JDK 17 එක select කරන්න.
    • Build System: ඔයාට කැමති Build System එකක් select කරන්න (Maven හෝ Gradle). අපි recommend කරන්නේ Gradle.
    • Language: Java
    • Group: com.example (ඔයාට කැමති නමක් දෙන්න පුළුවන්, සාමාන්‍යයෙන් reverse domain name format එකට දාන්නේ)
    • Artifact: demo (ඔයාගේ project එකේ නම)
    • Package name: com.example.demo
    • Java: 17
  5. "Next" click කරන්න.
  6. "Dependencies" screen එකේදී, අපි මුලින්ම "Spring Web" කියන dependency එක add කරමු. ඒකෙන් අපිට web application එකක් හදන්න අවශ්‍ය basics ටික ලැබෙනවා.
  7. "Create" click කරන්න.
  8. IntelliJ IDEA ඔයාට අලුත් project එකක් හදලා දෙනවා. ටික වෙලාවක් යනවා dependencies download වෙන්න.

ක්‍රමය 2: Spring Initializr Web Interface එක හරහා

  1. වෙබ් බ්‍රව්සරයක් open කරලා start.spring.io එකට යන්න.
  2. එතනදි ඔයාලට ඔයාලගේ project එකට අවශ්‍ය settings ටික choose කරන්න පුලුවන්. (Maven Project / Gradle Project, Java, Spring Boot version, Group, Artifact, Java version - 17, Add Dependencies - Spring Web).
  3. "Generate" button එක click කරන්න. ඔයාලට zip file එකක් download වෙයි.
  4. ඒ zip file එක extract කරලා, IntelliJ IDEA open කරලා "Open" or "Open an existing project" click කරලා extract කරපු folder එක select කරන්න.

Project එක Run කරමු

Project එක open වුනාට පස්සේ, IntelliJ IDEA වල දකුණු පැත්තේ Maven/Gradle tool window එකක් තියෙනවා. ඒකෙන් project එක refresh කරන්න පුළුවන්. (හෝ build කරන්න). ඊට පස්සේ, project එකේ main class එකට (DemoApplication.java වගේ එකක්) ගිහින්, green arrow button එක click කරලා "Run 'DemoApplication'" දෙන්න. නැත්නම් IDE එකේ ඉහළින් තියෙන Run button එක click කරන්න.

Console එකේ "Started DemoApplication in X seconds" වගේ දෙයක් දැක්කොත්, ඔයාගේ Spring Boot application එක සාර්ථකව run වෙනවා කියන එකයි. සාමාන්‍යයෙන් Spring Boot application එකක් default Port 8080 එකේ run වෙන්නේ.

අපේ පළමු Spring Boot Application එක බලමු

දැන් ඔයාගේ වෙබ් බ්‍රව්සරය open කරලා http://localhost:8080/ කියලා type කරලා enter කරන්න. මුලින්ම "Whitelabel Error Page" එකක් පෙනෙයි. ඒක සාමාන්‍යයි, මොකද අපි තාම කිසිම controller එකක් හදලා නැති නිසා. ඒ කියන්නේ ඔයාගේ environment එක සාර්ථකයි! අදට මේක ඇති. ඊළඟට අපිට පුළුවන් මේකේ controllers හදන්න, REST APIs ලියන්න.

පොදු ගැටළු සහ විසඳුම් (Troubleshooting Tips)

  • "JAVA_HOME is not set" error: ඔයාගේ JDK environment variable එක හරියට set වෙලා නැහැ. නැවත 1 වන පියවර පරීක්ෂා කරන්න.
  • Port 8080 already in use: ඔයාගේ computer එකේ වෙන application එකක් 8080 port එක භාවිතා කරනවා වෙන්න පුළුවන්. application.properties file එකට ගිහින් server.port=8081 වගේ දෙයක් දාලා port එක වෙනස් කරන්න.
  • "Could not find or load main class" error: Project එක හරියට build වෙලා නැති වෙන්න පුළුවන්. IntelliJ IDEA එකේ "Build" -> "Rebuild Project" දෙන්න.
  • Proxy Settings: ඔයාගේ office network එකේ proxy එකක් තියෙනවා නම්, Maven/Gradle වලට proxy settings adjust කරන්න වෙනවා.

අවසානයට...

ඉතින්, අද අපි කතා කළේ Spring Boot development වලට අවශ්‍ය මූලිකම පරිසරය (environment) සකස් කරගන්න විදිය ගැන. JDK, Maven/Gradle වගේ build tools, සහ IntelliJ IDEA වගේ powerful IDE එකක් install කරලා, ඒ සියල්ල එකට වැඩ කරනවද කියලා verify කරගන්නත් අපි ඉගෙන ගත්තා. මේක Spring Boot ලෝකයට ඔයාලගේ පළමු පියවරයි. මේ setup එක සාර්ථකව කරගත්තා නම්, ඔයාලට ලොකු අඩිතාලමක් වැටෙනවා.

මේක ඔයාලට තේරෙන්න, සරලව කියලා දෙන්න පුළුවන් වුණා කියලා හිතනවා. මොකද ගොඩක් වෙලාවට මේ වගේ technical posts සිංහලෙන් හොයාගන්න අමාරුයිනේ. ඒක තමයි මේක ලියන්න හිතුනේ. ඔයාලත් මේ පියවර ටික follow කරලා ඔයාලගේ development environment එක හදාගන්න. ප්‍රශ්න තියෙනවා නම්, මොනවා හරි පැහැදිලි නැත්නම්, පහළින් කමෙන්ට් කරන්න. මම පුළුවන් විදියට උදව් කරන්නම්.

ඊළඟ post එකෙන් අපි බලමු කොහොමද මේ setup කරගත්තු environment එක භාවිතා කරලා අපේ පළමු Spring Boot REST API එක හදාගන්නේ කියලා. එතකන් හැමෝටම සුභ දවසක්! Happy Coding!