2009-05-10 8 views
2

Ich benutze Nexus-Repository. und die Verwendung von Eclipse 3.4 mit installiertem m2eclipse-Plugin. manchmal muss ich Gläser hochladen, die sich nicht in den zentralen Repositories befinden (wie Sun-Gläser). also lade ich sie unter "3rd-Party" in Nexus hoch. Das Problem ist, dass Eclipse beim Versuch, diese JAR-Dateien als Abhängigkeiten hinzuzufügen, sie nicht indiziert und sie daher nicht als Optionen angeboten werden.m2eclipse Indizierung von 3rd-Party-Gläsern von Maven Repository

Irgendwelche Ideen,

Danke, Ronen.

Antwort

2

Ich benutze Dritte Gläser in meinem Projekt mit Nexus und ich bin in der Lage, sie mit dem m2eclipse Plugin, um zu sehen, indem Sie die folgenden Schritte aus:

Rechts Projekt klicken Sie -> Maven -> Update-Abhängigkeiten

auch kann es wichtig sein, zu bemerken, dass ich auch in meinem pom.xml die folgenden definiert (nicht in settings.xml).

<repositories> 
    <repository> 
     <releases> 
      <enabled>true</enabled> 
      <updatePolicy>always</updatePolicy> 
      <checksumPolicy>warn</checksumPolicy> 
     </releases> 
     <snapshots> 
      <enabled>false</enabled> 
     </snapshots> 
     <id>public</id> 
     <name>Maven 2 Repository (Releases)</name> 
     <url>http://your.domain.com/nexus/content/groups/public</url> 
     <layout>default</layout> 
    </repository> 
    <repository> 
     <snapshots> 
      <enabled>true</enabled> 
      <updatePolicy>always</updatePolicy> 
      <checksumPolicy>warn</checksumPolicy> 
     </snapshots> 
     <releases> 
      <enabled>false</enabled> 
     </releases> 
     <id>public-snapshots</id> 
     <name>Maven 2 Repository (Snapshots)</name> 
     <url>http://your.domain.com/nexus/content/groups/public-snapshots</url> 
     <layout>default</layout> 
    </repository> 
</repositories> 

<pluginRepositories> 
    <pluginRepository> 
     <releases> 
      <enabled>true</enabled> 
      <updatePolicy>always</updatePolicy> 
      <checksumPolicy>warn</checksumPolicy> 
     </releases> 
     <snapshots> 
      <enabled>false</enabled> 
     </snapshots> 
     <id>public</id> 
     <name>Maven 2 Repository (Releases)</name> 
     <url>http://your.domain.com/nexus/content/groups/public</url> 
     <layout>default</layout> 
    </pluginRepository> 
    <pluginRepository> 
     <snapshots> 
      <enabled>true</enabled> 
      <updatePolicy>always</updatePolicy> 
      <checksumPolicy>warn</checksumPolicy> 
     </snapshots> 
     <releases> 
      <enabled>false</enabled> 
     </releases> 
     <id>public-snapshots</id> 
     <name>Maven 2 Repository (Snapshots)</name> 
     <url>http://your.domain.com/nexus/content/groups/public-snapshots</url> 
     <layout>default</layout> 
    </pluginRepository> 
</pluginRepositories> 
+0

das Einlochen in settings.xml könnte besser sein, vorausgesetzt man die gleichen Repositories in allen Projekten will sie arbeiten. – sal

+0

Dies würde erfordern, dass die einzelnen Entwickler ihre settings.xml in ihrem .m2-Ordner aktualisieren. Der Vorteil, sie in der pom.xml zu definieren, besteht darin, dass Sie aus SVN auschecken und ohne zusätzliche Schritte erstellen können. Ich war mir auch nicht sicher, ob das m2eclipse-Plugin in der Lage sein würde, die Abhängigkeiten von Drittanbietern angemessen aufzulisten, außer es war in der pom.xml. –

+0

sal, hat einen Punkt. Aber Taylor's Punkt scheint besser :) Ich bevorzuge es in der pom.xml zu behalten – chris

0

settings.xml ist einfacher:

<mirror> 
    <id>public</id> 
    <url>http://yourserver/nexus-webapp-1.5.0/content/groups/public/</url> 
    <mirrorOf>*</mirrorOf> 
</mirror>