2016-04-11 8 views
2

Ich entwickle ein Bukkit Plugin mit dem M2E Plugin in Eclipse. Ich habe ein Problem, bei dem die Abhängigkeit von der Abhängigkeit (Bukkit 1.5.2 R1.0) an zwei verschiedenen Orten liegt, je nachdem, ob ich in der Schule bin oder nicht. Zu Hause befindet sich der Dateibaum in meiner Dropbox mit dem Maven-Repo unter C: /users/canon/.m2/repository/org/bukkit/bukkit-1.5.2-R1.0, aber in der Schule befindet er sich bei C:/users /nmeyer/.m2/repository/org/bukkit/bukkit-1.5.2-R1.0. Ich war in der Lage, das Projekt mit Maven so neu zu erstellen, dass das Maven-Repository immer nur auf einem Computer am richtigen Ort ist, aber nicht auf einmal. Gibt es eine Möglichkeit, dass ich Maven sagen kann, dass er sich beide Dateispeicherorte für das Maven-Repository ansehen soll, damit ich nicht identische Versionen desselben Projekts für den einen oder den anderen Speicherort konfigurieren muss?Gibt es eine Möglichkeit, mehrere Maven-Abhängigkeiten für ein Maven-Projekt in Eclipse zu verwenden?

Zusätzlicher Hinweis: Welcher Dateipfad ich das Maven-Projekt mit erstellen, wird funktionieren und ordnungsgemäß angezeigt mit der Jukebaum-Datei bukkit-1.5.2-R1.0 ordnungsgemäß unter Maven Abhängigkeiten angezeigt, aber es funktioniert nicht auf einem Computer in der andere Ort (Heim oder Schule).

Klarstellung: Das Maven-Repository ist in meiner pom.xml definiert, aber ich sehe nicht, wo der Maven-Repo-Pfad zu finden ist. Ich habe meine pom.xml angebracht, weil das Format der es ein wenig anders zu sein scheint als die gebuchten möglichen Antworten berücksichtige:

<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.nathanMeyer</groupId> 
<artifactId>headInfo</artifactId> 
<version>0.0.1-SNAPSHOT</version> 
<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <configuration> 
      <source>1.7</source> 
      <target>1.7</target> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 
<repositories> 
    <repository> 
     <id>bukkit-repo</id> 
     <url> http://repo.bukkit.org/content/groups/public/</url> 
    </repository> 
</repositories> 
<dependencies> 
    <dependency> 
     <groupId>org.bukkit</groupId> 
     <artifactId>bukkit</artifactId> 
     <version>1.5.2-R1.0</version> 
     <type>jar</type> 
     <scope>provided</scope> 
    </dependency> 
</dependencies> 

+0

Vielleicht können Sie das Verzeichnis von der Schule in Ihrem Heimcomputer erstellen, so ist es der gleiche Pfad. Oder du versuchst (sym) dies zu verlinken. – xdevs23

+0

Synchronisieren Sie die .classpath-Datei nicht zwischen Ihren Computern, diese enthält lokale Einstellungen für den Computer. – Ferrybig

Antwort

0

Ich habe herausgefunden, was das Problem ist, und es ist so dumm, dass ich nicht einmal daran dachte f es ursprünglich. Stellt sich heraus, dass meine Schule bukkit.org als "Spiele" blockiert und seit Schulcomputer Eclipse keine Möglichkeit hatte, eine Verbindung zu diesem Repository vom Schulcomputer herzustellen, da das Repo http://repo.bukkit.org/content/groups/public/ nicht erreichbar war.

1

Für Maven, Sie müssen nicht an Hard- Codepfade. Sie können:

${user.home} 

Zum Beispiel

<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 
         https://maven.apache.org/xsd/settings-1.0.0.xsd"> 
    <localRepository>${user.home}/.m2/repository</localRepository> 
    <interactiveMode>true</interactiveMode> 
    <usePluginRegistry>false</usePluginRegistry> 
    <offline>false</offline> 
    ... 
</settings> 

Überprüfen Sie die Maven Einstellungen Referenz für weitere Informationen: https://maven.apache.org/settings.html

Ihre Import, dann würde in etwa so aussehen:

<plugin> 
    <groupId>org.bukkit</groupId> 
    <artifactId>bukkit-1.5.2-R1.0</artifactId> 
</plugin>