মাভেন-পরিচালিত নির্ভরতার জন্য ইক্লিপসে সংযুক্ত উত্স জারের ফাইলগুলি পান


176

আমি গ্রহনে আমার জাভা প্রকল্পগুলির নির্ভরতাগুলি পরিচালনা করতে ম্যাভেন (এবং মাভেন ইক্লিপ্স ইন্টিগ্রেশন) ব্যবহার করছি। ম্যাভেন সংগ্রহশালা থেকে জেআর ফাইলগুলির জন্য স্বয়ংক্রিয় ডাউনলোড বৈশিষ্ট্যটি একটি আসল সময় রক্ষাকারী। দুর্ভাগ্যক্রমে, এটিতে এপিআই ডকুমেন্টেশন এবং উত্স কোড অন্তর্ভুক্ত নয়।

উত্সটি এবং জাভাদোক সংযুক্তিগুলি স্বয়ংক্রিয়ভাবে পেতে এবং তাদেরকে Eclipse এর সাথে সঠিকভাবে নিবন্ধ করার জন্য আমি মাভেন কীভাবে সেট আপ করতে পারি?


সংশ্লিষ্ট প্রশ্ন হল কিভাবে জিজ্ঞাসা সবসময় সূত্র ও javadoc ডাউনলোড যখন ম্যাভেন ব্যবহার হচ্ছে: stackoverflow.com/questions/5780758/...
ফ্লো

উত্তর:


226

আমি নিশ্চিত যে গ্রহণের জন্য এম 2 স্লাইপসে মাভেন প্লাগইন - অন্য উপায়ে - এটি করতে পারে। আপনার জন্য স্বয়ংক্রিয়ভাবে উত্স ফাইল এবং জাভাদোক উভয়ই ডাউনলোড করতে আপনি এটি কনফিগার করতে পারেন।

এটি উইন্ডো> অগ্রাধিকার> মাভেনে গিয়ে "ডাউনলোড করুন আর্টিক্ট উত্স" এবং "ডাউনলোড করুন আর্টিফ্যাক্ট জাভাডক" বিকল্পগুলি পরীক্ষা করে achieved

মাভেন পছন্দসমূহের স্ক্রিনশট


হ্যাঁ, আমি সবেমাত্র এম 2 স্লিপস ব্যবহার শুরু করেছি এবং এটি এর (এবং আরও অনেকগুলি জিনিস মাভেন) ব্যবহার করে।
থিলো

44
এই উত্তরগুলির কোনওটিরই উত্তর নয়। কেন তাদের ভোট দেওয়া হচ্ছে? আমি নেভিগেটর ভিউতে প্রকল্পটি ক্লিক করে এবং "এম 2 মাভেন" -> "ডাউনলোড উত্স" নির্বাচন করে উত্সগুলি ডাউনলোড করতে সক্ষম হয়েছি। আমি তখন লিঙ্কযুক্ত উত্সে নেভিগেট করতে ক্লাসে কমান্ড-ক্লিক (ম্যাক) করতে সক্ষম হয়েছি।
অ্যালেক্স ওয়ার্ডেন

8
দেখে মনে হচ্ছে সংকলিত জেআর ইতিমধ্যে ডাউনলোড করা থাকলে, গ্রহনটি তাত্ক্ষণিকভাবে উত্স / জাভাদোক জারগুলি পাওয়ার চেষ্টা করবে না। এটি প্রদর্শিত হয় যে একটি POM- র উপর নির্ভরশীলতা যুক্ত একটি পিওএম সংশোধন করে যার জন্য আমি গ্রহনের উত্স / জাভাদোক চাই এবং POM ডাউনলোডগুলি উত্স / জাভাদোককে নির্ভরতাগুলির জন্য ডাউনলোড করে, যদিও সংকলিত জেআর ইতিমধ্যে মাভেন সংগ্রহস্থল ক্যাশে রয়েছে।
ফ্রান্সিস গাগনি

13
@ ফ্র্যাঙ্কিস - উপরের পরিবর্তনটি করার পরে আপনার প্রকল্পে ডান ক্লিক করুন এবং "ম্যাভেন> আপডেট প্রকল্প নির্বাচন করুন ..." নির্বাচন করুন এটি আপনার উত্সের জারগুলি ডাউনলোড করার কারণ করবে।
কার্বনট্যাক্স

3
সমস্ত নির্ভরতার জন্য উত্স ডাউনলোড করার পরিবর্তে, নির্ভরতা নিজেই পামে নির্দিষ্ট করে কিছু নির্ভরশীলতার জন্য ডাউনলোড করা সম্ভব, নির্ভরতা ট্যাগের কোনও অভ্যন্তরীণ ট্যাগের মাধ্যমে বা এর অনুরূপ কিছু হতে পারে?
ন্যানোসফ্ট

127
mvn eclipse:eclipse -DdownloadSources=true

অথবা

mvn eclipse:eclipse -DdownloadJavadocs=true

অথবা আপনি উভয় পতাকা যুক্ত করতে পারেন, যেমন স্পেন্সার কে নির্দেশ করেছেন।

অতিরিক্তভাবে, =trueঅংশটি প্রয়োজন হয় না, তাই আপনি ব্যবহার করতে পারেন

mvn eclipse:eclipse -DdownloadSources -DdownloadJavadocs

8
অথবা উভয়! এমভিএন এক্সলিপ: অ্যাকলিপস -ডাউনলোডসোর্সস = সত্য -ডাউনলোডলোড জাভাদোকস = সত্য এটি কেবল তখনই কাজ করে যদি আপনি যে রেপোটি ডাউনলোড করছেন তার থেকে উত্স এবং জাভাদোক সরবরাহ করা হত। কখনও কখনও এগুলি বসন্তের মতো সরবরাহ করা হয় না।
স্পেন্সার কোর্মোস

2
বসন্ত এখন তাদের সরবরাহ করে।
রবিন গ্রীন

মনে রাখবেন যে এই উত্তরটি 10 ​​বছরেরও বেশি পুরানো। গ্রাহকরা গ্রহগ্রহের কনফিগারেশন ফাইল তৈরির পরিবর্তে এমপি 2 প্লাগইনটি গ্রহণ করুন।
থরবজর্ন রাভন অ্যান্ডারসন

71

এই কাজের অন্যান্য উত্তরগুলি, তবে আপনি যদি কমান্ড লাইনের যুক্তিগুলি মনে রাখতে না চান তবে আপনি কেবল আপনার পম.এক্সএমএল-এর maven-eclipse- প্লাগইন বিভাগে ডাউনলোডসোর্সগুলি এবং ডাউনলোড জাভাদোকস কনফিগারেশনে যুক্ত করতে পারেন:

<project>
    ...
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-eclipse-plugin</artifactId>
                <configuration>
                    <downloadSources>true</downloadSources>
                    <downloadJavadocs>true</downloadJavadocs>
                    ... other stuff ...
                </configuration>
            </plugin>
        </plugins>
    </build>
    ...
</project>

আমি কি এটি প্রতি নির্ভরতা স্তরে সেট করতে সক্ষম হব?
মার্কোরোসি

@ মার্কোরোসি দুঃখিত, এটি সম্ভব কিনা আমি নিশ্চিত নই।
চিন্তা কোরো

আমি নিশ্চিত নই যে এটি উপযুক্ত। অবশ্যই উত্স এবং জাভাদোক ডাউনলোড সেটিংস কোনও ব্যবহারকারীর পছন্দ, কোনও প্রকল্প-স্তরের উদ্বেগ নয়? এটি ফাইলটিতে কীভাবে রাখবেন তার জন্য নীচের আমার উত্তরটি দেখুন settings.xml
ডানকান জোন্স

আমি এই সতর্কতাটি পেয়েছি: [সতর্কতা] org.apache.maven.plugins এর জন্য 'build.plugins.plugin.version': maven-eclipse- প্লাগইন অনুপস্থিত। আপনি নীচে এই জাতীয় কিছু যুক্ত করতে পারেন তা স্থির করতে <artifactId>: <version> 2.9 </version>
ক্রিশ্চিয়ান

16

আমি প্রকল্প pom.xmlফাইলটিতে উত্স / জাভাদোক ডাউনলোড সেটিংস স্থাপন না করা পছন্দ করি কারণ আমার মনে হয় এগুলি ব্যবহারকারীর পছন্দ, প্রকল্পের বৈশিষ্ট্য নয়। পরিবর্তে, আমি তাদের আমার settings.xmlফাইলে একটি প্রোফাইলে রাখি :

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

  <profiles>
    <profile>
      <id>sources-and-javadocs</id>
      <properties>
        <downloadSources>true</downloadSources>
        <downloadJavadocs>true</downloadJavadocs>
      </properties>
    </profile>
  </profiles>

  <activeProfiles>
    <activeProfile>sources-and-javadocs</activeProfile>
  </activeProfiles>
</settings>

1
আমি এই সেটিংস.এক্সএমএল .m2 তে অনুলিপি করেছি তবে উত্স এবং জাভাদোকগুলি অনুলিপি করা হচ্ছে না। সিএলআই-তে স্পষ্টভাবে নিম্নলিখিত কমান্ডটি উত্স এবং জাভাদোকগুলি নিয়ে আসে যদিও: এমভিএন নির্ভরতা: উত্স নির্ভরতা: সমাধান -ডক্লাসিফায়ার = জাভাদোক কোনও চিন্তা?
অরুণ গুপ্ত

সম্ভবত এটি কাজ করে, তবে দয়া করে ব্যাখ্যা করুন, ম্যভেন ইক্লিপস প্লাগইনটি কীভাবে এই কনফিগারেশন সেটিংসটি আবিষ্কার করবে? আপনি কি মনে করেন এটি বিশ্বব্যাপী সম্পত্তি অনুসন্ধান করে?
ক্রিসিনমটাউন

9

প্রকল্প -> maven -> ডাউনলোড উত্স উপর ডান ক্লিক করুন


3
সবাই বলেছে কীভাবে এটি সক্রিয় করা যায় না কীভাবে উত্সগুলি ডাউনলোড করতে মাভেন পাবেন! বিকল্পটি সক্ষম করার পরে
চাদ

8

যদি উত্সের জারগুলি স্থানীয় ভাণ্ডারে থাকে এবং আপনি Eclipses maven সমর্থন ব্যবহার করছেন তবে উত্স স্বয়ংক্রিয়ভাবে সংযুক্ত হয়ে যাচ্ছে। আপনি mvn dependency:sourcesএকটি প্রদত্ত প্রকল্পের জন্য সমস্ত উত্স জার ডাউনলোড করতে চালাতে পারেন । যদিও ডকুমেন্টেশন দিয়ে একই কাজ করবেন তা নিশ্চিত নন।


এটি আমার পক্ষে কাজ করেছে। দৌড়ানোর পরে mvn dependency:sources, আমি উত্সটি পড়তে গ্রহণের জন্য ক্লিক করতে পেরেছিলাম। এম 2 ই সহ কোনও অতিরিক্ত মিকিংয়ের প্রয়োজন নেই। Javadocs আপনাকে যা ডাউনলোড করার জন্য mvn dependency:sources -Dclassifier=javadoc
মাদুর গেসেল

4

আপনি যদি মেলকিপ ব্যবহার করেন তবে

উইন্ডো -> মেভেন -> আর্টিফ্যাক্ট উত্স ডাউনলোড করুন (চেক নির্বাচন করুন)

(আপনি যদি এখনও সংযুক্ত উত্স উইন্ডোটি পান তবে তার পরে সংযুক্ত ফাইল বোতামে ক্লিক করুন এবং সংযুক্ত উত্স উইন্ডোটি বন্ধ করুন The পরবর্তী বার আপনি উত্সটি দেখার চেষ্টা করলে এটি সঠিক উত্সটি খুলবে)

Surajz



3

আমি উইন্ডোজ-> প্রেফ ..-> ম্যাভেন চেষ্টা করেছিলাম তবে এটি কার্যকর হয়নি। সুতরাং আমি mvn eclipse কমান্ড সহ একটি নতুন শ্রেণীর পথ তৈরি করেছি: গ্রহন -ডাউনলোডসোর্স = সত্য এবং কর্মক্ষেত্রটি একবার রিফ্রেশ করে। voila .. উত্স সংযুক্ত ছিল।

উত্স জারের প্রবেশিকা ক্লাসের পথে পাওয়া যায়। সুতরাং নতুন বিল্ড সমস্যার সমাধান ...


আপনার সমাধানের সাহায্যে আমি কোন মডিউলটির উত্স পেতে চাই তা চয়ন করতে এবং বেছে নিতে পারি। কেবলমাত্র সেই মডিউলে সিডি করুন এবং "এমভিএন ইক্লিপস: ক্লিন ইক্লিপস: ইক্লিপস -ডাউনলোডসোর্সস = ট্রু-টি 4 -ডমেন.টেস্কিপ = ট্রু -ডেনফোর্স.স্কিপ = ট্রু" দিয়ে বিল্ড করুন। ধন্যবাদ :)
বিশ্বজানন্দ

2

আমার এক্সলিপ হেলিওসের সংস্করণে এম 2 এগ্রিপস সহ কোনও নেই

window --> maven --> Download Artifact Sources (select check)

উইন্ডোর নীচে কেবল "নতুন উইন্ডো", "নতুন সম্পাদক" "উন্মুক্ত দৃষ্টিভঙ্গি" ইত্যাদি is

আপনি যদি আপনার প্রকল্পে ডান ক্লিক করেন তবে ম্যাভেন -> ডাউনলোড উত্স চয়ন করুন

কিছুই ঘটেনি. কোনও উত্স ডাউনলোড হয় না, কোনও পম ফাইল আপডেট হয় না, কোন উত্সটি জিজ্ঞাসা করে কোনও উইন্ডো পপ আপ হয় না।

গ্রহণের বাইরে এমভিএন এক্সএক্সএক্সএক্স করা বিপজ্জনক - কিছু কমান্ড এম 2 সিলপিসের সাথে কাজ করে না - আমি এটি একবার করেছিলাম এবং পুরো প্রকল্পটি হারিয়ে ফেলেছিলাম, গ্রহনটি পুনরায় ইনস্টল করতে হয়েছিল এবং স্ক্র্যাচ থেকে শুরু করতে হয়েছিল।

আমি এখনও সার্লেট-এপি-র মতো বহিরাগত জারের উত্স খুঁজে পেতে এবং ব্যবহার করার জন্য এক্সিলপস এবং ম্যাভেন পাওয়ার কোনও উপায় খুঁজছি।


2

উত্স / জাভাদোক অন্তর্ভুক্ত করার জন্য মাভেন-অ্যাক্লিপস-প্লাগইনের জন্য পম পরিবর্তন করা মাত্র পমটিতে নতুন নির্ভরতা যুক্ত হওয়ার জন্য আবেদন করুন। যদি আমাদের বিদ্যমান নির্ভরতার জন্য আবেদন করতে হয় তবে আমাদের এমভিএন নির্ভরতা চালাতে হবে: উত্স। আমি এটি পরীক্ষা করেছিলাম।


2

ডাউনলোডের উত্স / জাভাডোক চেক করা ইক্লিপস-মাভেনের পছন্দগুলিতে, কখনও কখনও পর্যাপ্ত হয় না। ইভেন্টে ম্যাভেন কোনও কারণে তাদের ডাউনলোড করতে ব্যর্থ হয়েছে (একটি নেটওয়ার্ক ব্ল্যাকআউট?), ম্যাভেন কিছু * .lastUpdated ফাইল তৈরি করে, তারপরে আর কখনও ডাউনলোড হবে না। আমার বুদ্ধিমান সমাধানটি ছিল .m2 / সংগ্রহস্থল থেকে আর্টিক্ট ডিরেক্টরিটি মুছে ফেলা এবং ডাউনলোড সোর্স / জাভাদোক চেক করে গ্রহন কর্মক্ষেত্র পুনরায় চালু করা এবং প্রারম্ভকালে পরীক্ষাগুলি আপডেট করার সাথে সাথে আপডেট করা। কর্মক্ষেত্রটি পুনরায় চালু হওয়ার পরে, সম্ভবত কিছু প্রকল্প ত্রুটি হিসাবে চিহ্নিত করা যেতে পারে, যখন গ্রহণের অগ্রগতি ডাউনলোড হচ্ছে, তবে কোনও ত্রুটি সাফ হয়ে যাবে। হয়তো এই পদ্ধতিটি এতটা "বৈজ্ঞানিক" নয়, তবে আমার পক্ষে সফল হয়েছিল।


1

উত্স এবং জাভাদোকগুলি ডাউনলোড করার জন্য আমি মভেন-অলিগ্রস প্লাগইনে পম কনফিগারেশন যুক্ত করেছি, তবে আমি মনে করি / আশা করি যে নতুন নির্ভরতার জন্য ঘটবে, বিদ্যমানগুলি নয়।

বিদ্যমান নির্ভরতাগুলির জন্য, আমি প্যাকেজ এক্সপ্লোরারকে "ম্যাভেন নির্ভরতা" এর নিচে ব্রাউজ করেছি এবং কমন্স-ল্যাং-2.5.jar- এ ডান ক্লিক করেছি, নির্বাচিত মাভেন | উত্স ডাউনলোড করুন এবং ... কিছুই ঘটেনি বলে মনে হয় (কোনও অগ্রগতি বার বা এটি কিছু করছে এমন ইঙ্গিত দেয়)। এটি এখন ডাউনলোড হয়েছে যেমন আমি এখন কমন্স-ল্যাংয়ের উত্সে ঝাঁপিয়ে উঠতে সক্ষম হয়েছি।


1

পম মধ্যে সেটআপ ব্যবহার করার পরামর্শ ওভারথিংক :

<project>
...
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-eclipse-plugin</artifactId>
            <configuration>
                <downloadSources>true</downloadSources>
                <downloadJavadocs>true</downloadJavadocs>
                ... other stuff ...
            </configuration>
        </plugin>
    </plgins>
</build>
...

প্রথমে আমি ভেবেছিলাম এটি এখনও জাভাদোক এবং উত্সগুলি সংযুক্ত করবে না (যেমন আমি আগে -ডাউনলোডসোর্স বিকল্পটি দিয়ে অসফল চেষ্টা করেছি)।

তবে আশ্চর্য - পোম ভেরিয়েন্টটি ব্যবহার করার সময় .classpath ফাইলটি এর উত্স এবং জাভাদোক সংযুক্ত করছে!


1

নীল (এবং সম্ভবত হেলিওসের) জন্য উপরে বর্ণিত চেকবক্সগুলি এখানে অবস্থিত:

উইন্ডো -> পছন্দসমূহ -> ম্যাভেন


0

আমারও একই সমস্যা ছিল, এবং সমাধান আমার জন্য সবচেয়ে ভাল কাজ কম্পাইল কোড হিসাবে একই বয়াম মধ্যে উৎস অন্তর্ভুক্ত করা (তাই বয়াম একটি প্রদত্ত ডিরেক্টরি উভয় অন্তর্ভুক্ত করা হবে ছিল Foo.javaএবং Foo.class)। গ্রহণটি স্বয়ংক্রিয়ভাবে সংকলিত কোডের সাথে উত্সকে যুক্ত করে এবং স্বয়ংক্রিয়ভাবে উত্স থেকে জাভডোক সরবরাহ করে। স্পষ্টতই, আপনি কেবল শৈল্পিক নিয়ন্ত্রণ করতে পারলেই এটি সহায়ক।


0

প্রোজেক্ট স্তর বা ব্যবহারকারী সম্পত্তি স্তরে সম্পত্তি নির্ধারণের পরে দয়া করে একটি ম্যাভেন -> আপডেট প্রকল্প (ফোর্স আপডেট) করুন। এটি সূত্রগুলি ডাউনলোড করে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.