2016-04-11 5 views
2

Я разрабатываю плагин Bukkit с плагином M2E в Eclipse. У меня проблема, когда зависимость maven (Bukkit 1.5.2 R1.0) находится в двух разных местах в зависимости от того, училась ли я в школе или нет. Дома дерево файлов находится в моем Dropbox с maven repo на C: /users/canon/.m2/repository/org/bukkit/bukkit-1.5.2-R1.0, но в школе он находится на C:/users /nmeyer/.m2/repository/org/bukkit/bukkit-1.5.2-R1.0. Я смог воссоздать проект с maven таким образом, чтобы репозиторий maven находился в правильном месте только на одном компьютере за раз, но не сразу. Есть ли способ, которым я могу сказать Maven, чтобы посмотреть в обоих этих расположениях файлов для репозитория maven, чтобы мне не нужно было поддерживать идентичные версии одного и того же проекта для одного или другого местоположения?Есть ли способ использовать несколько зависимостей maven для одного проекта maven в Eclipse?

Дополнительное примечание: какой путь к файлу я создаю проект maven, будет работать и корректно отображаться с файловым деревом bukkit-1.5.2-R1.0, правильно отображаемым в зависимостях maven, но он не будет работать на компьютере в другое место (дом против школы).

Уточнение: репозиторий Maven определяется в моем pom.xml, но я не вижу, где найти путь репозитория maven. Я приложил свою pom.xml, так как формат его, кажется, немного отличаемся от посланных возможных ответов были учтены:

<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

Возможно, вы можете создать каталог из школы на своем домашнем компьютере, так что это тот же путь. Или вы пытаетесь (sym) ссылку, что, может быть. – xdevs23

+0

Не синхронизируйте файл .classpath между компьютерами, это содержит локальные настройки компьютера. – Ferrybig

ответ

0

Я понял, в чем проблема, и это так глупо, что я даже не думал о Первоначально. Оказывается, что моя школа блокирует bukkit.org как «игры», а со школьного компьютера Eclipse не было возможности подключиться к этому репозиторию со школьного компьютера, поскольку репо http://repo.bukkit.org/content/groups/public/ было недоступно.

1

Для Maven, вам не нужно Аппаратно кодовые пути. Вы можете использовать:

${user.home} 

Например,

<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> 

Обзор ссылка настройки Maven для получения дополнительной информации: https://maven.apache.org/settings.html

Ваш импорт, то будет выглядеть примерно так:

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