как настроить путь сборки eclipse для использования зависимостей maven?

<p>я хотел бы воспользоваться возможностями, которые предоставляет maven для управления зависимостями в проекте. мое краткое понимание того, как работает maven, заключается в том, что он получит необходимые jar-файлы и затем создаст проект с этими библиотеками.</p><p>в настоящее время у меня есть простой файл pom, настроенный в качестве теста:</p><pre><code><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/maven-v4\_0\_0.xsd"> <modelversion>4.0.0</modelversion> <groupid>com.jamesgoodwin.test</groupid> <artifactid>com.jamesgoodwin.test</artifactid> <version>0.0.1-snapshot</version> <build> </build> <dependencies> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-core</artifactid> <version>3.0.0.release</version> <type>jar</type> <scope>compile</scope> </dependency> </dependencies> </project> </code></pre><p>обычно при управлении зависимостями для проекта я добавляю проект или jar в путь сборки проекта, а затем могу создать свой проект. </p><p>но при использовании m2eclipse зависимости не добавляются автоматически в путь сборки. есть ли где-то, что мне нужно настроить, чтобы eclipse знал, что maven управляет зависимостями?</p>

<p>если вы щелкнете правой кнопкой мыши по своему проекту, в разделе «maven» должна быть опция «включить управление зависимостями». вот и все.</p>

<p>если вы выполните</p><pre><code>mvn eclipse:clean </code></pre><p>с последующим </p><pre><code>mvn eclipse:eclipse </code></pre><p>if подготовит для вас файл eclipse <code>.classpath</code>. то есть эти команды запускаются для maven из командной строки, то есть за пределами eclipse.</p>

<p>я предполагаю, что вы используете m2eclipse, как вы упомянули об этом. однако неясно, создали ли вы свой проект под eclipse или нет, поэтому я постараюсь охватить все случаи. </p><ol> <li><p>если вы создали проект «java» в eclipse (ctrl + n> java project), то <strong>щелкните правой кнопкой мыши</strong> проект в представлении <strong>package explorer</strong> и перейдите к <strong>maven> включить управление зависимостями</strong> (в зависимости от исходной структуры проекта вы можете изменить ее так, чтобы она соответствовала структуре maven, например, добавив <code>src/java</code> к исходным папкам на пути сборки). </p></li> <li><p>если вы создали «maven project» в eclipse (ctrl + n> maven project), то он уже должен быть «maven ready».</p></li> <li><p>если вы создали проект maven вне eclipse (вручную или с архетипом), просто <em>import</em> в eclipse (<strong>щелкните правой кнопкой мыши</strong> в представлении <strong>package explorer</strong> и выберите <strong>import). ..> maven projects</strong>) и это будет "maven ready".</p></li> </ol><p>теперь, чтобы добавить зависимость, либо <strong>щелкните правой кнопкой мыши</strong> проект и выберите <strong>maven> добавить зависимость</strong>), либо отредактируйте pom вручную.</p><p>ps: избегайте использования <a href="http://maven.apache.org/plugins/maven-eclipse-plugin/">maven-eclipse-plugin</a> , если вы используете m2eclipse. в этом нет абсолютно никакой необходимости, это будет сбивать с толку, это приведет к некоторому беспорядку. нет, правда, не используйте его, если вы действительно не знаете, что делаете.</p>

<p>щелкните правой кнопкой мыши проект configure> конвертировать в maven проект</p><p>затем вы можете увидеть все связанные с maven меню для вашего проекта.</p>

<p>добавьте это в файл .classpath.</p><pre><code><classpathentry kind="con" path="org.eclipse.m2e.maven2\_classpath\_container"> <attributes> <attribute name="maven.pomderived" value="true"/> </attributes> </classpathentry> </code></pre><p>спасибо</p>

<p>мне понравилось это .. </p><p>щелкните правой кнопкой мыши по проекту -> настроить -> преобразовать в проект maven . щелкните правой кнопкой по проекту -> maven -> добавить зависимости.</p>

<p>в eclipse (mars) отправляйтесь в:</p><p>свойства проекта -> maven. убедитесь, что «разрешить зависимости от проектов рабочей области» <strong>отключено</strong>.</p>

<p>я не нашел maven или настроить меню, но нашел следующую кнопку, которая решила мою проблему:</p><p><img src="https://i.stack.imgur.com/hprva.jpg" alt="enter image description here"></p>

<p>когда m2eclipse установлен правильно, он должен автоматически добавлять зависимости . однако вы должны сгенерировать файлы проекта eclipse, введя:</p><pre><code>mvn eclipse:m2eclipse </code></pre><p>или, если вы не используете m2eclipse:</p><pre><code>mvn eclipse:eclipse </code></pre>

<p>для более новых версий eclipse (> = mars) щелкните правой кнопкой мыши проект> configure> convert to maven project</p>

<p>у меня был небольшой разброс, который вызвал некоторые проблемы - несколько подпроектов в одном проекте. в этом случае мне нужно было перейти в каждую отдельную папку, содержащую pom, выполнить команду mvn eclipse: eclipse, а затем вручную скопировать/объединить записи classpath в мой файл classpath проекта.</p>

<p>добавление моих ответов по нескольким причинам: </p><ul> <li>каким-то образом ни один из перечисленных ответов напрямую не решил мою проблему. </li> <li>не удалось найти «включить управление зависимостями» под maven. я использую eclipse 4.4.2 build on wed, 4 февраля 2015.</li> </ul><p>что помогло мне, так это еще одна опция в maven, называемая «обновить проект», а затем, когда я щелкаю по нему, открывается это окно, в котором есть флажок «принудительное обновление снимка/выпусков». я знаю, что настоящая цель этого флажка другая, но каким-то образом он решил проблему с зависимостями. <a href="https://i.stack.imgur.com/wvbdl.png"><img src="https://i.stack.imgur.com/wvbdl.png" alt="enter image description here"> </a> </p>

<p>убедитесь, что ваш pom соответствует соглашению об именах и в строчных буквах назван <code>pom.xml</code>, а не <code>pom.xml</code>.</p><p>в моем случае все было правильно, но eclipse все еще жаловался при попытке щелкнуть правой кнопкой мыши и <code>update project configuration</code> - сказал мне, что pom не может быть прочитан. изменили имя на строчные - <code>pom.xml</code> с <code>pom.xml</code> - и все заработало.</p>

<p>я тоже встречался с этим вопросом. когда я добавляю зависимости в <code>pom.xml</code>, я проверяю локальную папку <code>/users/xyz/.m2/</code>, и файлы jar уже загружены туда, но не могу добавить путь сборки eclipse.</p><p>моя версия eclipse:<strong> выпуск mars.2 (4.5.2) </strong> <br/><br/> <strong> щелкните правой кнопкой мыши проект </strong>><strong> maven </strong>><strong> включить разрешение рабочей области </strong> <br/><br/> и это решило мою проблему.</p>

<p>ничто из этого не решило мою проблему. но я нажал на pom.xml, внизу есть вкладка с названием зависимости. на этой вкладке он разделен на 2 раздела: один называется зависимостями, а другой называется управлением зависимостями. выберите каждую вещь в разделе зависимостей и нажмите кнопку добавить, чтобы находиться под управлением управления зависимостями. закройте и снова откройте ваш проект.</p>

<p>как правило, вы можете скопировать файл .classpath из рабочего проекта, поскольку здесь нет ничего конкретного проекта, если вы структурированы как стандартный проект maven.</p>

<p>возможно, вы могли бы заглянуть в <a href="http://maven.apache.org/plugins/maven-eclipse-plugin/">maven-eclipse-plugin</a> вместо m2eclipse.</p><p>там вы в основном добавляете конфигурацию maven-eclipse-plugin в ваш pom.xml, а затем выполняете <code>mvn eclipse:eclipse</code>, который сгенерирует требуемые файлы <code>.project</code> и <code>.classpath</code> для eclipse. тогда у вас будет правильный путь сборки в eclipse.</p>

<p>это сработало для меня в eclipse oxygen (4.7.0): </p><p>щелкните правой кнопкой мыши project -> maven -> select maven profiles ..., затем установите флажок rexy репозитория и нажмите ok.</p>