هل أخبرني POM.xml.template كل ما أحتاج إلى معرفته لاستخدام المشروع كاعتماد

StackOverflow https://stackoverflow.com/questions/168961

سؤال

أحاول إضافة مساهمة Lucene Sandbox مصطلح أعلى إلى بلدي pom.xml. أنا لست على دراية بـ Maven ، لكن الرمز يحتوي pom.xml.template الذي يبدو أنه يعني ما إذا كنت أضيف تبعية تبدو مثل:

<dependency>
  <groupId>org.apache.lucene</groupId>
  <artifactId>lucene-highlighter</artifactId>
</dependency>

قد يعمل. هل يمكن لأحد أن يساعدني في إضافة مشروع Community Lucene إلى ملف pom.xml الخاص بي؟

شكرًا على التعليقات ، اتضح أن إضافة الإصدار كان كل ما أحتاجه ، وأخمن أنه يجب أن يتطابق مع إصدار Lucene-Core الذي كنت أستخدمه:

<dependency>
    <groupId>org.apache.lucene</groupId>
    <artifactId>lucene-highlighter</artifactId>
    <version>2.3.1</version>
</dependency>
هل كانت مفيدة؟

المحلول

يجب عليك إضافة رقم الإصدار ، ولكن عليك فقط القيام بذلك مرة واحدة في بنية المشروع. أي إذا تم تعريف رقم الإصدار في POM الوالدين ، فلن تضطر إلى إعطاء رقم الإصدار مرة أخرى. (لكن ليس عليك حتى توفير التبعية في هذه الحالة لأن التبعية سيتم ورثها على أي حال.)

نصائح أخرى

لديك بشكل صحيح ، لكن ربما تريد إضافة الإصدار أيضًا:

من البرنامج التعليمي 5 دقائق

<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>
  <groupId>com.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>Maven Quick Start Archetype</name>
  <url>http://maven.apache.org</url>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

</project>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top