Maven пропускает файлы зависимостей? - PullRequest
0 голосов
/ 17 мая 2011

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

    <dependency>   
    <groupId>EWSAPI</groupId> 
    <artifactId>EWSAPI</artifactId> 
    <version>1.1</version> 
    <scope>system</scope>
    <systemPath>${basedir}/EWSAPI1.1.jar</systemPath>
    </dependency>


    <dependency>   
    <groupId>jcifs</groupId> 
    <artifactId>jcifs</artifactId> 
    <version>1.3.15</version> 
    <scope>system</scope>
    <systemPath>${basedir}/jcifs-1.3.15.jar</systemPath>
    </dependency>



    <dependency>   
    <groupId>commons-codec</groupId> 
    <artifactId>commons-codec</artifactId> 
    <version>1.4</version> 
    <scope>system</scope>
    <systemPath>${basedir}/commons-codec-1.4.jar</systemPath>
    </dependency>


    <dependency>   
    <groupId>commons-httpclient</groupId> 
    <artifactId>commons-httpclient</artifactId> 
    <version>3.1</version> 
    <scope>system</scope>
    <systemPath>${basedir}/commons-httpclient-3.1.jar</systemPath>
    </dependency>


    <dependency>   
    <groupId>commons-logging</groupId> 
    <artifactId>commons-logging</artifactId> 
    <version>1.1.1</version> 
    <scope>system</scope>
    <systemPath>${basedir}/commons-logging-1.1.1.jar</systemPath>
    </dependency>

Теперь, когда я пытаюсь установить mvn в командной строке, чтобы установить зависимости.Я получаю следующее сообщение

The following files where skipped:
   EWSAPI:EWSAPI:java-source:sources:1.1
   commons-codec:commons-codec:java-source:sources:1.4
   commons-httpclient:commons-httpclient:java-source:sources:3.1
   commons-logging:commons-logging:java-source:sources:1.1.1    

, а также пропускается один файл jfis (тот же, что упоминался выше в качестве зависимости)

Я не понимаю, почему Maven делает это?Я ценю вашу помощь в этом.Спасибо

Ответы [ 2 ]

1 голос
/ 17 мая 2011

Из вопроса не понятно, что вы пытаетесь сделать.

С одной стороны, вы упоминаете I have 5 local jar files as dependent files, и вы указали их с помощью <system> scope в pom.xml. С другой стороны, вы упоминаете о запуске mvn install to install the dependencies.

Вам следует избегать <system> scope, если нет веских причин, особенно для сторонних зависимостей (например, commons-codec).

mvn install создает указанный проект и устанавливает его в локальный репозиторий. Он не устанавливает dependencies.

Вы можете использовать mvn install:install-file <params> - install зависимости для локального репозитория после их отдельной загрузки. Они не получают installed в ${basedir}.

Обновите свой вопрос соответствующим образом, если вышесказанное не поможет.

1 голос
/ 17 мая 2011

Попробуйте что-то вроде этого:

<repositories>
    <repository>
        <id>my-internal-site</id>
        <url>file:///${basedir}</url>
    </repository>
</repositories>

Затем удалите аргумент системного пути.

Также вы уверены, что область действия должна быть системной?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...