Maven ইনস্টলেশন যাচাই করা (mvn -version কমান্ড ব্যবহার করে)

Maven ইন্সটলেশন এবং সেটআপ - ম্যাভেন (Maven) - Java Technologies

343

Maven হল একটি জনপ্রিয় বিল্ড টুল যা Java প্রোজেক্টগুলির বিল্ড, ডিপেনডেন্সি ম্যানেজমেন্ট, এবং ডিপ্লয়মেন্টকে সহজ করে তোলে। POM (Project Object Model) হল মাভেনের প্রধান কনফিগারেশন ফাইল, যা প্রোজেক্টের মেটাডেটা, ডিপেনডেন্সি, বিল্ড নির্দেশিকা এবং অন্যান্য সেটিংস ধারণ করে।

এখানে POM ফাইল এর মৌলিক গঠন এবং এর গুরুত্বপূর্ণ এলিমেন্টস (যেমন GroupId, ArtifactId, Version) আলোচনা করা হবে।


১. POM ফাইলের মৌলিক গঠন

POM ফাইলটি একটি XML ফাইল হয় এবং এটি প্রোজেক্টের কনফিগারেশন ও মেটাডেটা ধারণ করে। একটি সাধারণ POM ফাইলের গঠন এভাবে হতে পারে:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>

    <!-- Project Coordinates -->
    <groupId>com.example</groupId>
    <artifactId>my-app</artifactId>
    <version>1.0-SNAPSHOT</version>

    <!-- Parent, Dependencies, Plugins, etc. -->
    <dependencies>
        <!-- Project dependencies go here -->
    </dependencies>

</project>

POM ফাইলের মূল এলিমেন্টস:

  1. modelVersion: POM ফাইলের মডেল ভার্সন (সাধারণত 4.0.0)।
  2. groupId: প্রোজেক্টের গ্রুপ আইডি, যা প্রোজেক্টের প্রতিষ্ঠাতা বা প্রতিষ্ঠানের নামের মতো।
  3. artifactId: প্রোজেক্টের আর্টিফ্যাক্ট আইডি, যা সাধারণত প্রোজেক্টের নাম বা ইউনিক আইডি।
  4. version: প্রোজেক্টের ভার্সন।

২. GroupId, ArtifactId, এবং Version

এগুলো হল POM ফাইলের মূল অংশ যা আপনার প্রোজেক্টের ইউনিক পরিচয় গঠন করে। এগুলোর সঠিকভাবে কনফিগার করা গুরুত্বপূর্ণ, কারণ এগুলো Maven Central Repository-তে প্রোজেক্টের অবস্থান এবং সংস্করণ সনাক্ত করতে সাহায্য করে।

২.১ GroupId:

GroupId হলো একটি প্রোজেক্টের গ্রুপ বা প্রতিষ্ঠানের ইউনিক নাম। এটি প্রোজেক্টের গঠনকে নামকরণে সাহায্য করে এবং Maven রেপোজিটরি সিস্টেমে প্রোজেক্টকে শ্রেণীবদ্ধ করার কাজ করে। সাধারণত, এটি একটি ডোমেইন নামের বিপরীত ফর্মে থাকে (যেমন: com.example, org.apache ইত্যাদি)।

উদাহরণ:

<groupId>com.example</groupId>

এখানে, com.example গ্রুপ আইডি।

২.২ ArtifactId:

ArtifactId হলো প্রোজেক্টের নাম বা ইউনিক আইডি যা Maven রেপোজিটরিতে ঐ প্রোজেক্টকে চিহ্নিত করে। এটি সাধারণত প্রোজেক্টের নাম হতে পারে (যেমন: my-app, spring-boot ইত্যাদি)। এক গ্রুপের অধীনে একাধিক আর্টিফ্যাক্ট থাকতে পারে, তাই artifactId ইউনিক হতে হবে।

উদাহরণ:

<artifactId>my-app</artifactId>

এখানে, my-app আর্টিফ্যাক্ট আইডি।

২.৩ Version:

Version এলিমেন্টটি আপনার প্রোজেক্টের সংস্করণ নির্ধারণ করে। এটি প্রোজেক্টের বর্তমান অবস্থান বা স্ট্যাটাসের প্রতিনিধিত্ব করে (যেমন: 1.0-SNAPSHOT, 1.0.0, 2.0 ইত্যাদি)। SNAPSHOT সংস্করণটি একটি অস্থির বা ডেভেলপমেন্ট ভার্সনকে নির্দেশ করে, যখন এটি প্রকাশিত এবং স্থির হয়ে যায় তখন version থেকে SNAPSHOT সরিয়ে 1.0.0 দেওয়া হয়।

উদাহরণ:

<version>1.0-SNAPSHOT</version>

এখানে, 1.0-SNAPSHOT ভার্সন। এটি একটি ডেভেলপমেন্ট ভার্সন।


৩. Complete POM Example with GroupId, ArtifactId, and Version

একটি পূর্ণাঙ্গ POM ফাইলের উদাহরণ নিচে দেওয়া হলো, যেখানে groupId, artifactId, এবং version এর কনফিগারেশন অন্তর্ভুক্ত করা হয়েছে।

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>

    <!-- Project Coordinates -->
    <groupId>com.example</groupId>
    <artifactId>my-app</artifactId>
    <version>1.0-SNAPSHOT</version>

    <!-- Project Packaging -->
    <packaging>jar</packaging> <!-- This could be jar, war, pom, etc. -->

    <!-- Dependencies -->
    <dependencies>
        <!-- Add dependencies here -->
    </dependencies>

</project>

কোড ব্যাখ্যা:

  1. modelVersion: POM ফাইলের ভার্সন, সাধারণত 4.0.0 থাকে।
  2. groupId: com.example নামক গ্রুপ আইডি।
  3. artifactId: my-app নামক আর্টিফ্যাক্ট আইডি।
  4. version: 1.0-SNAPSHOT ভার্সন, যা ডেভেলপমেন্টের সময় ব্যবহার করা হয়।
  5. packaging: প্যাকেজিং টাইপ, এখানে jar ব্যবহার করা হয়েছে। এটি war, pom ইত্যাদি হতে পারে।
  6. dependencies: এখানে আপনি অন্যান্য লাইব্রেরি বা ডিপেনডেন্সি যোগ করতে পারেন।

সারাংশ

POM (Project Object Model) ফাইল হল মাভেনের গুরুত্বপূর্ণ অংশ যা প্রোজেক্টের মেটাডেটা এবং কনফিগারেশন ধারণ করে। GroupId, ArtifactId, এবং Version এই তিনটি মূল এলিমেন্ট মাভেন প্রোজেক্টের পরিচয় এবং ভার্সন কন্ট্রোল নিশ্চিত করতে ব্যবহৃত হয়। এই এলিমেন্টস ব্যবহার করে আপনি সহজেই আপনার প্রোজেক্টের ডিপেনডেন্সি ম্যানেজমেন্ট, ডেপ্লয়মেন্ট এবং ভার্সনিং পরিচালনা করতে পারেন।


Content added By
Promotion

Are you sure to start over?

Loading...