পূর্বনির্ধারিত মাভেন বৈশিষ্ট্যের তালিকা কোথায়


125

আমি জানি যে সমস্ত পূর্বনির্ধারিত মাভেন বৈশিষ্ট্যগুলির একটি তালিকা রয়েছে (আপনি জানেন project.build.sourceEncodingবা পছন্দ করেন project.build.sourceDirectory)। আমি একবার তালিকাটি দেখেছি কিন্তু আমি এটি আবার খুঁজে পাচ্ছি না।

উত্তর:


132

আপনি এই এক বোঝাতে চান?

https://web.archive.org/web/20150520200505/https://docs.codehaus.org/display/MAVENUSER/MavenPropertiesGuide

আমি এর সামগ্রীটি একটি গিটহাব রেপোতেও স্থানান্তরিত করেছি:

https://github.com/cko/predefined_maven_properties/blob/master/README.md


1
সাধারণত, আপনি যখন ইন্টেলিজ আইডিইএতে pom.xML সম্পাদনা করেন, এটি কোনও মাভেন সম্পত্তি হিসাবে দেখায় এমন কোনও কিছুর জন্য বিকল্পগুলি সরবরাহ করে ব্যাপকভাবে সহায়তা করে (উদাহরণস্বরূপ ${...})
কেদার মহাশ্বেদে

এমভিএন সহায়তা: কার্যকর-পম উপলব্ধ বৈশিষ্ট্যগুলি আবিষ্কার করার জন্য দুর্দান্ত সরঞ্জাম হিসাবে দাঁড়িয়েছে। maven.apache.org/plugins/maven-help-plugin/…
পিটার কাহান

1
মাভেন উইকিতে এই পৃষ্ঠাটিও পর্যালোচনা করুন: cwiki.apache.org/confluence/display/MAVEN/…
গাস

"সবকিছু" পছন্দ করে না [WARNING] The expression ${artifactId} is deprecated. Please use ${project.artifactId} instead.তবে এর মধ্যে বেশিরভাগ অন্তর্ভুক্ত থাকে;)
রজারডপ্যাক


26

"কার্যকর পিওএম" দেখে সম্ভবত খুব সাহায্য করবে। উদাহরণস্বরূপ, আপনি যদি জানতে চান যে পথটি কী${project.build.sourceDirectory}

আপনি কার্যকর POM এ সম্পর্কিত XML খুঁজে পাবেন, যেমন: <project> <build> <sourceDirectory>/my/path</sourceDirectory>

এছাড়াও সহায়ক - আপনি mvn help:evaluateপিওএম-র মতো একই গানে থাকাকালীন কমান্ড লাইন কার্যকর করার মাধ্যমে সম্পত্তিগুলির একটি রিয়েল টাইম মূল্যায়ন করতে পারেন ।


দেখে মনে হচ্ছে কিছু এক্সএমএল গাছের এবং কিছু "সাধারণ বৈশিষ্ট্যগুলি"
এফডাব্লুআইডাব্লু থেকে

11

আমার মনে হয় দেখার জন্য সেরা জায়গাটি হ'ল সুপার পিওএম

উদাহরণস্বরূপ, লেখার সময়, লিঙ্কযুক্ত রেফারেন্স 32 - 48 এর মধ্যে কিছু বৈশিষ্ট্য দেখায়।

এর ব্যাখ্যাটি হ'ল এক্সপ্যাথকে একটি .সীমিত সম্পত্তি হিসাবে অনুসরণ করা ।

সুতরাং, উদাহরণস্বরূপ:

${project.build.testOutputDirectory} == ${project.build.directory}/test-classes

এবং:

${project.build.directory} == ${project.basedir}/target

এইভাবে তাদের সংমিশ্রণে আমরা দেখতে পাই:

${project.build.testOutputDirectory} == ${project.basedir}/target/test-classes

(রিসোর্স ডিরেক্টরি (গুলি) উল্লেখ করতে, এই স্ট্যাকওভারফ্লো প্রশ্নটি দেখুন )


<project>
    <modelVersion>4.0.0</modelVersion>
    .
    .
    .
    <build>
        <directory>${project.basedir}/target</directory>
        <outputDirectory>${project.build.directory}/classes</outputDirectory>
        <finalName>${project.artifactId}-${project.version}</finalName>
        <testOutputDirectory>${project.build.directory}/test-classes</testOutputDirectory>
        <sourceDirectory>${project.basedir}/src/main/java</sourceDirectory>
        <scriptSourceDirectory>src/main/scripts</scriptSourceDirectory>
        <testSourceDirectory>${project.basedir}/src/test/java</testSourceDirectory>
        <resources>
            <resource>
                <directory>${project.basedir}/src/main/resources</directory>
            </resource>
        </resources>
        <testResources>
            <testResource>
                <directory>${project.basedir}/src/test/resources</directory>
            </testResource>
        </testResources>
        .
        .
        .
    </build>
    .
    .
    .
</project>

6

এই পৃষ্ঠাটি অবিরাম কোডহাউস পৃষ্ঠাগুলির বাইরের রেফারেন্সগুলি দেখে ক্লান্ত হয়ে পড়েছিলাম তাই আমি মাভেন ব্যবহারকারীদের মেলিং তালিকায় জিজ্ঞাসা করেছি এবং আরও কিছু আপ-টু-ডেট উত্তর পেয়েছি।

আমি বলব যে উপরে আমার লিঙ্কে থাকা সেরা (এবং সর্বাধিক অনুমোদিত) উত্তরটি হেরভে বাটেমির দ্বারা প্রদত্ত একটি:

এখানে মূল উল্লেখটি রয়েছে: http://maven.apache.org/ref/3-LATEST/maven-model-builder/

এটি পিওএম বা সেটিংসে পাওয়া যাবে এমন সমস্ত কিছু ব্যাখ্যা করে না, যেহেতু প্রচুর পরিমাণে তথ্য পাওয়া যায় তবে এটি পিওএম এবং সেটিংস বর্ণনাকারীদের দিকে নির্দেশ করে এবং পিওএম বা সেটিংস নয় এমন সমস্ত কিছু ব্যাখ্যা করে


3
খুব প্রশ্ন একটি লিঙ্ক চেয়েছে, তাই আমি মনে করি আপনার উদ্বেগটি ভুল জায়গায় স্থান পেয়েছে। এই প্রশ্নটি "আমি কীভাবে এক্স করব" জিজ্ঞাসা করে না তবে "আমি এক্স কোথায় পাব"।
স্টিভ কোহেন

2
ওফস, আপনি ঠিক বলেছেন - এই প্রশ্নটি এই সাইটের মধ্যে খাপ খায় না :-) মাথা আপ করার জন্য ধন্যবাদ - বন্ধ করার পক্ষে ভোট দিয়েছেন
ক্লিওপেট্রা

1
এবং তবুও, এটি এমন একটি প্রশ্ন যা বার বার আসে যেমন আমার মেইলিং লিস্ট পোস্টটি পেয়েছে এমন অনেক উত্তরগুলির মধ্যে সহজেই স্বীকার করা হয়েছিল .. মূল বিষয়টি হল যে মাভেন এই অঞ্চলটি ভাল বা সংক্ষিপ্তভাবে নথিভুক্ত করেন না। এই ধরণের তথ্যের জন্য তাদের ওয়েবসাইটে বিশিষ্টভাবে প্রদর্শিত একটি পৃষ্ঠা থাকা উচিত এবং নেই। এমনকি এই লিঙ্কগুলি থেকে এটি অবিলম্বে পরিষ্কার নয় যে, POM রেফারেন্সের যে কোনও উপাদান বা উল্লিখিত অন্যান্য জায়গাগুলি একটি $ {dotted.notation} এক্সপ্রেশনে রূপান্তরিত হতে পারে এবং একটি POM ফাইলে ব্যবহৃত হতে পারে। এই প্রশ্নটি এইভাবে একটি কার্যকর উদ্দেশ্যে কাজ করে এবং এটি আবার সরানো হলে আপডেট করা দরকার।
স্টিভ কোহেন

1
বাহ্যিক সংস্থানগুলির জন্য জিজ্ঞাসা করা এই সাইটের সুযোগের বাইরে, যদি সবগুলি বিধি দ্বারা
চালিত

3
আমি কখনও কখনও নিয়ম বুঝতে পারি না। এটি একটি সম্পূর্ণ বৈধ প্রশ্ন এবং অতীতে লোকেরা এর উত্তর দিতে আগ্রহী ছিল না। এই জাতীয় নিয়মের জন্য স্টিকারর হয়ে স্ট্যাক ওভারফ্লো তার মুখটি সত্ত্বেও নাক কেটে দেয়।
স্টিভ কোহেন

3

এই লিঙ্কটি কীভাবে সমস্ত সক্রিয় বৈশিষ্ট্য তালিকাভুক্ত করবে তা দেখায়: http://skillshared.blogspot.co.uk/2012/11/how-to-list-down-all-maven- উপলভ্য html

সংক্ষেপে, আপনার POM এ নিম্নলিখিত প্লাগইন সংজ্ঞা যুক্ত করুন, তারপরে চালান mvn install:

<plugin>
    <artifactId>maven-antrun-plugin</artifactId>
    <version>1.7</version>
    <executions>
        <execution>
            <phase>install</phase>
            <configuration>
                <target>
                    <echoproperties />
                </target>
            </configuration>
            <goals>
                <goal>run</goal>
            </goals>
        </execution>
    </executions>
</plugin>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.