เมื่อ maven พูดว่า“ การแก้ปัญหาจะไม่ถูกพยายามอีกครั้งจนกระทั่งช่วงเวลาการอัปเดตของ MyRepo ผ่านไปแล้ว” ช่วงเวลานั้นถูกระบุไว้ที่ใด


587

ด้วย maven บางครั้งฉันก็โดนสิ่งประดิษฐ์ที่มาจาก repo ของบุคคลที่สามที่ฉันยังไม่ได้สร้างหรือรวมอยู่ในที่เก็บของฉัน

ฉันจะได้รับข้อความแสดงข้อผิดพลาดจากลูกค้า maven ว่าไม่พบสิ่งประดิษฐ์:

ล้มเหลวในการค้นหา org.jfrog.maven.annomojo: maven-plugin-anno: jar: 1.4.0 ในhttp://myrepo:80/artifactory/repoถูกแคชในพื้นที่เก็บข้อมูลท้องถิ่นการแก้ปัญหาจะไม่ถูก reattempted จนกว่าช่วงเวลาการปรับปรุงของ MyRepo ที่ผ่านไปหรือการปรับปรุงถูกบังคับ -> [ ช่วยเหลือ 1]

ตอนนี้ผมเข้าใจสิ่งที่นี้หมายถึงและก็สามารถ re-run คำสั่งของฉันที่มี-Uและสิ่งที่มักจะปรับการทำงานจากที่นั่นออก

อย่างไรก็ตามฉันพบว่าข้อความแสดงข้อผิดพลาดนี้ไม่ได้ใช้งานง่ายและกำลังพยายามทำให้เพื่อนร่วมงานของฉันปวดหัวบ้าง

ฉันกำลังพยายามหาว่ามีบางที่ที่ฉันสามารถแก้ไขupdate intervalการตั้งค่านี้ได้ไหม

  1. เป็นupdate intervalที่กล่าวถึงในข้อผิดพลาดนี้ฝั่งไคลเอ็นต์หรือการตั้งค่าด้านเซิร์ฟเวอร์?
  2. หากฝั่งไคลเอ็นต์ฉันจะกำหนดค่าได้อย่างไร
  3. หากฝั่งเซิร์ฟเวอร์ไม่มีใครรู้ว่า Nexus / Artifactory เปิดเผยการตั้งค่าเหล่านี้อย่างไร

11
ฉันได้รับข้อความแสดงข้อผิดพลาดเดียวกันหลังจากเพิ่มการพึ่งพา pom.xml ของฉันอีก 1 รายการ สำหรับฉันนี้เป็นข้อบกพร่องอย่างชัดเจน ฉันไม่เข้าใจว่าทำไมสิ่งนี้เกิดขึ้น! ถ้าฉันเพิ่มการอ้างอิงไปยังโครงการของฉันและฉันรัน mvn คอมไพล์กว่าที่ควรจะดาวน์โหลดไฟล์ jar พฤติกรรมนี้ไร้สาระโดยสิ้นเชิง!
Robert Reiz


ฉันเพิ่งได้สัมผัสสิ่งนี้และหลังจากคำตอบทั้งหมดที่ฉันได้อ่านแล้วขั้นตอนเพิ่มเติมอีกอย่างคือการนำเข้าโครงการอีกครั้งใน Eclipse (ในกรณีของฉัน) มันแปลกเกินไปที่จะเก็บไว้ใน Eclipse bugging pom.xmlฉันด้วยปลั๊กอินที่ไม่ได้อยู่ในของฉัน
ไม่ระบุตัวตน

คำถามที่สำคัญสำหรับฉัน !! ขอบคุณเพื่อน!
Mr. Noddy

สำหรับฉันมันกลายเป็น repo เฉพาะที่เชื่อมโยงกับ GitHub และ URL ก็ออฟไลน์ (รับ 404) ฉันอัปเดต repo เป็นเซิร์ฟเวอร์ภายในของเราและใช้งานได้
cbmeeks

คำตอบ:


286

ฉันใช้เพื่อแก้ปัญหานี้โดยการลบไดเรกทอรีที่เกี่ยวข้องล้มเหลวในการดาวน์โหลดไดเรกทอรีสิ่งประดิษฐ์ใน repo ท้องถิ่นของฉัน ครั้งต่อไปที่ฉันเรียกใช้คำสั่ง maven การดาวน์โหลดสิ่งประดิษฐ์จะเริ่มขึ้นอีกครั้ง ดังนั้นฉันจะบอกว่าเป็นการตั้งค่าฝั่งไคลเอ็นต์

ด้าน Nexus (ฝั่ง repo ของเซิร์ฟเวอร์) ปัญหานี้แก้ไขได้ด้วยการกำหนดค่างานที่กำหนดไว้ ฝั่งไคลเอ็นต์นี่ใช้เสร็จ-Uแล้วตามที่คุณชี้ไปแล้ว


7
"ฉันใช้เพื่อแก้ปัญหานี้โดยการลบไดเรกทอรีที่เกี่ยวข้องล้มเหลวในการดาวน์โหลดไดเรกทอรีสิ่งประดิษฐ์ใน repo ท้องถิ่นของฉัน" สิ่งนี้ใช้ได้สำหรับฉัน ฉันใช้ Netbeans ด้วย

16
หาก Maven ตั้งข้อสังเกตว่าสิ่งประดิษฐ์ที่แคชนั้นไม่ถูกต้องเหตุใดจึงไม่สามารถแก้ไขสิ่งนี้ด้วยตนเองได้
สเตฟาน

1
"การกำหนดค่าภารกิจที่กำหนดเวลา" หมายถึงอะไรและ "สิ่งนี้เสร็จสิ้นโดยใช้ -U" คุณช่วยใส่สิ่งเหล่านี้ลงในคำศัพท์ Eclipse UI ได้ไหม?
user2568374

1
ฉันถือว่าคุณหมายถึง Eclipse IDE ทฤษฎีคือคุณต้องดาวน์โหลด SNAPSHOT ล่าสุด หากต้องการทำเช่นนั้นคุณต้องเพิ่มพารามิเตอร์ '-U' ลงในคำสั่ง maven ของคุณเช่น mvn clean compile -U ตอนนี้คุณสามารถรันคำสั่ง maven ได้ทั้งผ่านบรรทัดคำสั่งหรือผ่าน Eclipse โดยทำเครื่องหมายที่ช่อง 'always update snapshot' ไม่แน่ใจฉันใช้ intellij ทุกวันนี้ ส่วน 'การกำหนดค่าภารกิจที่กำหนดเวลา' หมายถึงการกำหนดค่าเฉพาะที่คุณต้องการมีบนเซิร์ฟเวอร์ Nexus ของคุณ สิ่งนี้ไม่เกี่ยวข้องกับ Eclipse เช่นนี้
Christian Achilli

10
นี่ไม่ได้ตอบคำถามจริงของ OPs
8bitjunkie

116

คุณสามารถลบไดเรกทอรีสิ่งประดิษฐ์ที่ล้มเหลวที่สอดคล้องกันในที่เก็บภายในเครื่อง และคุณยังสามารถใช้-Uในเป้าหมาย มันจะทำงาน ใช้งานได้กับ maven 3 ดังนั้นจึงไม่จำเป็นต้องปรับลดรุ่นเป็น maven 2


2
ทำไม messing กับการกำหนดค่าพื้นที่เก็บข้อมูลเมื่อมันง่ายมาก?
Koraktor

9
โปรดอ่านคำถามอย่างรอบคอบก่อนที่จะตอบ OP จะถามวิธีตั้งช่วงเวลาไม่ใช่วิธีบังคับการอัปเดต
i3ensays

2
ไม่ใช่คำตอบสำหรับคำถาม แต่นี่คือสิ่งที่ผู้คนต้องการเมื่อพวกเขามีข้อยกเว้น เพราะเมื่อคุณทำงานกับการพัฒนา lib ท้องถิ่นที่ดีที่สุดคือการลบ lib ดังกล่าวแทนการอนุญาตให้ช่วงเวลาสับสนคุณ
mcvkr

เราควรเพิ่มที่เก็บข้อมูลที่ถูกต้องไว้ใต้~/.m2/settings.xml/<repositories>เพื่อแก้ไขปัญหานี้ด้วยตัวเลือก -U
Kanagavelu Sugumar

64

ฉันมีปัญหาที่เกี่ยวข้อง แต่คำตอบของ Raghuram ช่วยได้ (ฉันยังมีชื่อเสียงไม่พอที่จะโหวตคำตอบของเขา) ฉันใช้ Maven ที่มาพร้อมกับ NetBeans และได้รับเหมือนกัน "... ถูกแคชในที่เก็บในเครื่องความละเอียดจะไม่ได้รับการแก้ไขจนกว่าจะถึงช่วงเวลาอัปเดตของ nexus ที่ผ่านไปหรือการอัปเดตถูกบังคับ -> [ช่วยเหลือ 1]" .

ในการแก้ไขปัญหานี้ฉันเพิ่มลง<updatePolicy>always</updatePolicy>ในไฟล์การตั้งค่าของฉัน (C: \ Program Files \ NetBeans 7.0 \ java \ maven \ conf \ settings.xml)

<profile>
  <id>nexus</id>
  <!--Enable snapshots for the built in central repo to direct -->
  <!--all requests to nexus via the mirror -->
  <repositories>
    <repository>
      <id>central</id>
      <url>http://central</url>
      <releases><enabled>true</enabled><updatePolicy>always</updatePolicy></releases>
      <snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots>
    </repository>
  </repositories>
 <pluginRepositories>
    <pluginRepository>
      <id>central</id>
      <url>http://central</url>
      <releases><enabled>true</enabled><updatePolicy>always</updatePolicy></releases>
      <snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots>
    </pluginRepository>
  </pluginRepositories>
</profile>

8
ไม่ได้ช่วยในกรณีของฉัน
arcy

64

สิ่งที่เกิดขึ้นโดยทั่วไปคือตาม updatePolicy ของ maven.Maven จะดึงไหจาก repo เป็นประจำทุกวันดังนั้นหากในช่วงที่พยายามอินเทอร์เน็ตครั้งที่ 1 ของคุณไม่ทำงาน

มติ:

ทั้งใช้

mvn -U clean install

ที่ -U จะบังคับให้อัพเดต repo

หรือใช้

<profiles>
    <profile>
      ...
      <repositories>
        <repository>
          <id>myRepo</id>
          <name>My Repository</name>
          <releases>
            <enabled>false</enabled>
            <updatePolicy>always</updatePolicy>
            <checksumPolicy>warn</checksumPolicy>
          </releases>
         </repository>
      </repositories>
      ...
    </profile>
  </profiles>

ใน settings.xml ของคุณ


39

อ้างอิงถึงการตั้งค่าการอ้างอิง :

updatePolicy:องค์ประกอบนี้ระบุความถี่ที่ควรพยายามอัพเดทที่จะเกิดขึ้น Maven จะเปรียบเทียบเวลาประทับของ POM ท้องถิ่น (เก็บไว้ในไฟล์ maven-metadata ของที่เก็บ) กับรีโมต ตัวเลือกคือ: เสมอทุกวัน (ค่าเริ่มต้น) ช่วงเวลา: X (โดยที่ X เป็นจำนวนเต็มเป็นนาที) หรือไม่เคย

ตัวอย่าง:

<profiles>
    <profile>
      ...
      <repositories>
        <repository>
          <id>myRepo</id>
          <name>My Repository</name>
          <releases>
            <enabled>false</enabled>
            <updatePolicy>always</updatePolicy>
            <checksumPolicy>warn</checksumPolicy>
          </releases>
         </repository>
      </repositories>
      ...
    </profile>
  </profiles>
  ...
</settings>

7
ขอบคุณสำหรับการตอบกลับ; อย่างไรก็ตามฉันได้ทำการทดลองเล็กน้อยด้วยการตั้งค่า "updatePolicy" และดูเหมือนว่าจะไม่มีผลกับข้อผิดพลาด "ไม่พบ" / "การแคชที่ล้มเหลว" / "การแก้ไขจะไม่ได้รับการแก้ไขอีกครั้ง"
cprice404

23

ในขณะที่คุณสามารถแก้ไขปัญหานี้ได้ด้วยการติดตั้งใหม่ทั้งหมด (แทนที่การพึ่งพาแคชใด ๆ ) ตามที่ @ Sanjeev-Gulgani แนะนำด้วย mvn -U clean install

คุณสามารถลบการอ้างอิงแคชที่ทำให้เกิดปัญหาได้ด้วย

mvn dependency:purge-local-repository -DmanualInclude="groupId:artifactId"

ดูเอกสาร mvnสำหรับข้อมูลเพิ่มเติม


9

ข้อผิดพลาดนี้บางครั้งอาจทำให้เข้าใจผิด 2 สิ่งที่คุณอาจต้องการตรวจสอบ:

  1. มี JAR จริงสำหรับการพึ่งพาใน repo หรือไม่? ข้อความแสดงข้อผิดพลาดของคุณมี URL ที่กำลังค้นหาดังนั้นไปที่นั่นแล้วเรียกดูโฟลเดอร์ที่ตรงกับการอ้างอิงของคุณ มีโถหรือเปล่า ถ้าไม่คุณต้องเปลี่ยนการพึ่งพาของคุณ (ตัวอย่างเช่นคุณอาจชี้ไปที่การพึ่งพาพาเรนต์ระดับบนสุดเมื่อคุณควรชี้ไปที่โปรเจ็กต์ย่อย)

  2. หาก jar อยู่บน repo ระยะไกลให้ลบสำเนาโลคัลของคุณ มันจะอยู่ในโฮมไดเร็กตอรี่ของคุณ (ยกเว้นว่าคุณได้กำหนดค่าแตกต่างกัน) ภายใต้. m2 / repository (ls -a เพื่อแสดงการซ่อนหากบน Linux)


4
สิ่งนี้ไม่เกี่ยวข้องกับคำถามของ OP เหตุผลที่แสดงข้อผิดพลาดไม่ใช่จุด OP ต้องการทราบวิธีตั้งค่าช่วงเวลาลองใหม่
8bitjunkie

1
นี่อาจเป็นปัญหาโดยนัยที่อยู่เบื้องหลังโพสต์ของ OP และกลายเป็นปัญหาของฉัน กลับกลายเป็นว่าฉันมีตัวพิมพ์ผิดใน <groupId> ของฉันซึ่งการตรวจสอบตัวเลือกตัวหนึ่งทำให้ฉันลงเส้นทางที่ถูกต้อง
James Oravec

1
คำถามคือวิธีการตั้งช่วงเวลา?
smilyface

7

หากคุณใช้ Eclipse ให้ไปที่ Windows -> Preferences -> Maven และยกเลิกการเลือกที่ช่องทำเครื่องหมาย "อย่าอัปเดตการอ้างอิงจากที่เก็บข้อมูลระยะไกลโดยอัตโนมัติ"

ใช้งานได้กับ Maven 3 เช่นกัน


1
ตรวจสอบแล้วสำหรับ: eclipse: Juno Service Release 2. m2e: v 1.3.1
user77115

8
นี่ไม่ได้ตอบคำถามของ OP
8bitjunkie

5

คุณต้องลบไฟล์ "_maven.repositories" ทั้งหมดจากที่เก็บของคุณ


3
ไม่ช่วยหรืออย่างน้อยก็ไม่ได้ในกรณีของฉัน
arcy

1
มันใช้งานได้สำหรับฉัน ฉันไม่ได้ลบพวกเขาทั้งหมด แต่เพียงคนเดียวในโฟลเดอร์พึ่งพาที่เฉพาะเจาะจง
Piyin

5

มันจะทำงานหลังจากที่คุณลบการอ้างอิงที่เกี่ยวข้องจากที่เก็บ maven ท้องถิ่นของคุณ

/user/.m2/repository/path

มันใช้งานได้อย่างมีเสน่ห์
Jadda

3

หากคุณใช้ Nexus เป็น repo พร็อกซีจะมีการตั้งค่า "Not Found Cache TTL" ด้วยค่าเริ่มต้น 1440 นาที (หรือ 24 ชั่วโมง) การลดค่านี้อาจช่วยได้ (ที่เก็บ> การกำหนดค่า> การตั้งค่าการหมดอายุ)

ดูเอกสารประกอบสำหรับข้อมูลเพิ่มเติม


2

ฉันได้รับปัญหานี้ได้อย่างไร

เมื่อฉันเปลี่ยนจาก Eclipse Juno เป็น Luna และเช็คเอาต์โครงการ maven ของฉันจาก SVN repo ฉันได้รับปัญหาเดียวกันในขณะที่สร้างแอปพลิเคชัน

ฉันลองทำอะไร ฉันพยายามล้างที่เก็บโลคัลแล้วอัพเดตเวอร์ชันทั้งหมดอีกครั้งโดยใช้ตัวเลือก -U แต่ปัญหาของฉันยังคงดำเนินต่อไป

จากนั้นฉันไปที่ Window -> การตั้งค่า -> Maven -> การตั้งค่าผู้ใช้ -> และคลิกที่ปุ่ม Reindex ภายใต้ Local Repository และรอให้ reindex เกิดขึ้น

นั่นคือทั้งหมดที่ปัญหาได้รับการแก้ไข


4
นี่ไม่ได้ตอบคำถามของ OP
8bitjunkie

2

เมื่อต้องการตอบคำถามชื่อเรื่องสุดท้าย: คือ (การตั้งค่าฝั่งไคลเอ็นต์) ใน (โครงการโปรไฟล์หรือการตั้งค่า)

[plugin]?[r|R]epository/[releases|snapshots]/updatePolicy

... แท็ก

ค่าที่เป็นไปได้ (ปัจจุบัน maven: 3.6.0 แต่ฉันคิดว่าเป็นไปได้ "ไกลไปข้างหลัง") ที่เป็นไปได้คือ:

/**
 * Never update locally cached data.
 */
public static final String UPDATE_POLICY_NEVER = "never";
/**
 * Always update locally cached data.
 */
public static final String UPDATE_POLICY_ALWAYS = "always";
/**
 * Update locally cached data once a day.
 */
public static final String UPDATE_POLICY_DAILY = "daily";
/**
 * Update locally cached data **every X minutes** as given by "interval:X".
 */
public static final String UPDATE_POLICY_INTERVAL = "interval";

การประเมินปัจจุบัน (maven 3.6.0) ของแท็กนี้มีการใช้งานดังนี้:

public boolean isUpdatedRequired( RepositorySystemSession session, long lastModified, String policy )
{
    boolean checkForUpdates;
    if ( policy == null )
    {
        policy = "";
    }
    if ( RepositoryPolicy.UPDATE_POLICY_ALWAYS.equals( policy ) )
    {
        checkForUpdates = true;
    }
    else if ( RepositoryPolicy.UPDATE_POLICY_DAILY.equals( policy ) )
    {
        Calendar cal = Calendar.getInstance();
        cal.set( Calendar.HOUR_OF_DAY, 0 );
        cal.set( Calendar.MINUTE, 0 );
        cal.set( Calendar.SECOND, 0 );
        cal.set( Calendar.MILLISECOND, 0 );
        checkForUpdates = cal.getTimeInMillis() > lastModified;
    }
    else if ( policy.startsWith( RepositoryPolicy.UPDATE_POLICY_INTERVAL ) )
    {
        int minutes = getMinutes( policy );
        Calendar cal = Calendar.getInstance();
        cal.add( Calendar.MINUTE, -minutes );
        checkForUpdates = cal.getTimeInMillis() > lastModified;
    }
    else
    {
        // assume "never"
        checkForUpdates = false;
        if ( !RepositoryPolicy.UPDATE_POLICY_NEVER.equals( policy ) )
        {
            LOGGER.warn( "Unknown repository update policy '{}', assuming '{}'",
                    policy, RepositoryPolicy.UPDATE_POLICY_NEVER );
        }
    }
    return checkForUpdates;
}

โฉม:

private int getMinutes( String policy )
{
    int minutes;
    try
    {
        String s = policy.substring( RepositoryPolicy.UPDATE_POLICY_INTERVAL.length() + 1 );
        minutes = Integer.valueOf( s );
    }
    catch ( RuntimeException e )
    {
        minutes = 24 * 60;
        LOGGER.warn( "Non-parseable repository update policy '{}', assuming '{}:1440'",
                policy, RepositoryPolicy.UPDATE_POLICY_INTERVAL );
    }
    return minutes;
}

... ที่ไหนlastModified(ไฟล์ท้องถิ่น) "การแก้ไขเวลา" ของ / แต่ละสิ่งประดิษฐ์พื้นฐาน


โดยเฉพาะอย่างยิ่งสำหรับการinterval:xตั้งค่า:

  • ลำไส้ใหญ่:ที่ไม่เข้มงวด - การใด ๆ "ไม่ว่าง" ตัวอักษรสามารถทำมัน ( =, , ... )
  • ค่าลบx < 0ควรทำให้เป็น "ไม่เคย"
  • interval:0 ฉันจะถือว่าเป็นช่วง "อย่างแน่นอน" (0-59 วินาทีหรือสูงกว่า ... )
  • การยกเว้นรูปแบบตัวเลขส่งผลให้เกิด24 * 60นาที (~ "รายวัน")

..see: DefaultUpdatePolicyAnalyzer , DefaultMetadataResolver # resolMetadata ()และRepositoryPolicy


1

สำหรับผู้ใช้Intellijข้อมูลต่อไปนี้ใช้ได้กับฉัน:

คลิกขวาที่แพ็คเกจของคุณ

Maven > Reimport 

และ

Maven > Generate Sources and Update Folders

0

ค่อนข้างเกี่ยวข้อง .. ฉันได้รับ

"[ข้อผิดพลาด] ล้มเหลวในการดำเนินการเป้าหมายในโครงการ testproject: ไม่สามารถแก้ไขการอ้างอิงสำหรับโครงการ myjarname: jar: 1.0-0: ความล้มเหลวในการค้นหา myjarname-core: บันเดิล: 1.0-0 in http://repo1.maven.org/maven2ถูกแคชในที่เก็บในเครื่อง พยายามใหม่อีกครั้งจนกว่าช่วงเวลาการอัปเดตของศูนย์กลางจะผ่านไปหรือการอัปเดตถูกบังคับ -> [ความช่วยเหลือ 1] "

ข้อผิดพลาดนี้เกิดจากการตั้งใจใช้แทนMaven 3 Maven 2เพิ่งคิดว่ามันอาจช่วยบางคนได้เพราะการค้นหา google ครั้งแรกของฉันทำให้ฉันมาที่หน้านี้


2
เกิดอะไรขึ้นถ้าโครงการของคุณบังคับให้คุณใช้ Maven 3 คุณมีเงื่อนงำอะไรบ้างเกี่ยวกับสิ่งที่เปลี่ยนแปลงระหว่างสองเวอร์ชันนี้หรือไม่?
Xr

1
นี่คือสิ่งที่ฉันเป็นปัญหา ไม่มีความคิดว่าทำไม Maven 3 จึงแตกต่างจาก 2 ขอบคุณที่โพสต์ข้อความนี้และช่วยให้ฉันไม่ต้องเสียเวลาค้นหาโซลูชันอีกต่อไป
CatsAndCode

จะติดตั้ง maven2 แทน maven3 ได้อย่างไร
ล้านล้าน

คำถามทั่วไปมาก .. ระบบปฏิบัติการอะไร สำหรับ Ubuntu คุณสามารถทำ "sudo apt-get install maven2" ... หรือสำหรับ Linux / UNIX ใด ๆ คุณเพียงแค่ดาวน์โหลดไฟล์เก็บถาวรและรวบรวมด้วยตัวคุณเองเพิ่มเข้าไปในเส้นทางของคุณ ลอง: shameerarathnayaka.blogspot.com/2012/01/..
sdanzig

นี้ทำงานสำหรับฉันและในความเป็นจริงฉันเชื่อมโยงกลับไปที่นี้จากฉันคำตอบที่นี่
shiri

0

Maven มีการตั้งค่าupdatePolicyสำหรับการระบุความถี่เพื่อตรวจสอบการอัพเดตในที่เก็บหรือเพื่อให้ที่เก็บซิงค์กับระยะไกล

  • ค่าเริ่มต้นสำหรับ updatePolicy คือรายวัน
  • ค่าอื่นสามารถเป็นได้ตลอดเวลา / ไม่เคย / XX (ระบุช่วงเวลาเป็นนาที)

ตัวอย่างโค้ดด้านล่างสามารถเพิ่มลงในไฟล์การตั้งค่าผู้ใช้ maven เพื่อกำหนดค่า updatePolicy

<pluginRepositories>
    <pluginRepository>
        <id>Releases</id>
        <url>http://<host>:<port>/nexus/content/repositories/releases/</url>
        <releases>
            <enabled>true</enabled>
            <updatePolicy>daily</updatePolicy>
        </releases>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </pluginRepository>             
</pluginRepositories>

3
นี่ไม่ได้ตอบคำถามของ OP OP มีความชัดเจนว่าพวกเขาเข้าใจว่าปัญหาคืออะไรและจะอัปเดตพื้นที่เก็บข้อมูล M2 ในพื้นที่ของตนได้อย่างไร OP จะถามว่าช่วงเวลานั้นอยู่ที่ใดและจะเปลี่ยนแปลงอย่างไร ไม่มีการกล่าวถึง IDE ใด ๆ เลย คุณยังไม่ได้อ่านคำถาม
8bitjunkie

@ 8bitjunkie If client-side, how do I configure it?คำตอบนี้ค่อนข้างตรงคำถาม: คำตอบนี้ไม่เกี่ยวกับฟีเจอร์ IDE ใด ๆ มันคือการตั้งค่าที่เก็บ mvn เท่านั้น updatePolicyเป็นช่วงเวลา OP จะถามเกี่ยวกับ
montrivo

นี่อาจเป็นคำตอบที่ยอมรับได้ @ cprice404
montrivo


0

ฉันมีปัญหานี้และคำอธิบายที่ครอบคลุมที่เสนอในสิ่งนี้ช่วยให้ฉันแก้ไขได้

ปัญหาที่ประกาศสองคือปัญหาของฉัน ฉันใช้ที่เก็บของบุคคลที่สามซึ่งฉันเพิ่งเพิ่มเข้าไปทำrepositoryส่วนของไฟล์ pom ในโครงการของฉัน ฉันเพิ่มข้อมูลที่เก็บเดียวกันลงในpluginrepositoryเพื่อแก้ไขปัญหานี้


0

ฉันมีข้อผิดพลาดคล้ายกันกับสิ่งประดิษฐ์อื่น

<... > ถูกแคชในพื้นที่เก็บข้อมูลในท้องถิ่นการแก้ปัญหาจะไม่ได้รับการพยายามอีกครั้งจนกว่าช่วงเวลาการอัปเดตของศูนย์กลางจะผ่านไปหรือการอัปเดตถูกบังคับ

วิธีแก้ปัญหาที่อธิบายไว้ข้างต้นไม่ได้ผลสำหรับฉัน ในที่สุดผมก็มีมติในIntelliJ IDEAโดย ไฟล์> โมฆะแคช / รีสตาร์ท ... > โมฆะและเริ่มต้นใหม่


0

ในกรณีของฉันฉันมีหลายโครงการ

rootProject
 |-> contractProject (using Project Lombok)
 |-> domainProject (dependency on contractProject)

เมื่อฉันได้ "ติดตั้งใหม่ทั้งหมด" จากไดเรกทอรี "domainProject" ฉันจะได้รับข้อผิดพลาดดังกล่าว

เมื่อฉันทำ "mvn clean install" จากไดเรกทอรี "projectRoot" ปัญหาก็หายไป

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.