2015-01-27 3 views
0

Я использую NetBeans 8, работая с каркасом Vaadin на некоторое время, но сегодня я получил эту ошибку:Maven не может решить зависимости Vaadin

cd /Users/BlackSheepII/Sites/microapplicazione/sprint 2/microapplicazione2/microapplicazione2-ui; JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home "/Applications/NetBeans/NetBeans 8.0.1.app/Contents/Resources/NetBeans/java/maven/bin/mvn" clean install 
Scanning for projects... 

------------------------------------------------------------------------ 
Building microapplicazione2 - microapplicazione2-ui 0.2 
------------------------------------------------------------------------ 
The POM for com.loop:microapplicazione2-widgetset:jar:0.2 is missing, no dependency information available 
------------------------------------------------------------------------ 
BUILD FAILURE 
------------------------------------------------------------------------ 
Total time: 0.275s 
Finished at: Tue Jan 27 23:15:06 CET 2015 
Final Memory: 7M/245M 
------------------------------------------------------------------------ 
Failed to execute goal on project microapplicazione2-ui: Could not resolve dependencies for project com.loop:microapplicazione2-ui:war:0.2: Failure to find com.loop:microapplicazione2-widgetset:jar:0.2 in http://maven.vaadin.com/vaadin-addons was cached in the local repository, resolution will not be reattempted until the update interval of vaadin-addons has elapsed or updates are forced -> [Help 1] 

To see the full stack trace of the errors, re-run Maven with the -e switch. 
Re-run Maven using the -X switch to enable full debug logging. 

For more information about the errors and possible solutions, please read the following articles: 
[Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException 

Я пытаюсь сделать МВНА чистой установки, как было предложено в другом вопросе, но ошибка такая же.

Я также пытаюсь создать проект на всем возможном пути (maven from bash, maven archetype from netbeans ...). Однако, если я создаю проект maven с vaadin-archetype-clean, то есть без пользовательских надстроек, как я понял, все работает.

Я спрашиваю, почему и как я исправить проблему. Я думаю, maven не может решить зависимость и, возможно, что-то не хватает в моем pom.xml.

редактировать 1

Вот файл ПОМ:

<?xml version="1.0" encoding="UTF-8"?> 
<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"> 
    <parent> 
     <artifactId>as</artifactId> 
     <groupId>com.loop</groupId> 
     <version>7.0.0</version> 
    </parent> 
    <modelVersion>4.0.0</modelVersion> 

    <artifactId>as-ui</artifactId> 
    <name>as-ui</name> 
    <packaging>war</packaging> 

    <dependencies> 
     <!-- Versions for these are configured in the parent POM --> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>javax.servlet-api</artifactId> 
      <scope>provided</scope> 
     </dependency> 
     <dependency> 
      <groupId>com.vaadin</groupId> 
      <artifactId>vaadin-server</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>com.vaadin</groupId> 
      <artifactId>vaadin-push</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>com.vaadin</groupId> 
      <artifactId>vaadin-themes</artifactId> 
     </dependency> 

     <dependency> 
      <groupId>${project.groupId}</groupId> 
      <artifactId>as-widgetset</artifactId> 
      <version>${project.version}</version> 
     </dependency> 

     <!-- Bean validation implementation --> 
     <dependency> 
      <groupId>org.hibernate</groupId> 
      <artifactId>hibernate-validator</artifactId> 
      <version>5.1.0.CR1</version> 
     </dependency> 

     <!-- Testing --> 
     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>4.11</version> 
      <scope>test</scope> 
     </dependency> 
    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-war-plugin</artifactId> 
       <configuration> 
        <!-- By attaching the classes to a separate JAR, we can import them 
         directly in the production overlay project, making it easier to compile a 
         separate widgetset for production mode. --> 
        <attachClasses>true</attachClasses> 
        <!-- Exclude some unnecessary files generated by the GWT compiler. --> 
        <packagingExcludes>WEB-INF/classes/VAADIN/gwt-unitCache/**, 
         WEB-INF/classes/VAADIN/widgetsets/WEB-INF/**</packagingExcludes> 
       </configuration> 
      </plugin> 
      <!-- The Jetty plugin allows us to easily test the development build by 
       running jetty:run on the command line. --> 
      <plugin> 
       <groupId>org.eclipse.jetty</groupId> 
       <artifactId>jetty-maven-plugin</artifactId> 
       <version>${jetty.plugin.version}</version> 
       <configuration> 
        <scanIntervalSeconds>2</scanIntervalSeconds> 
       </configuration> 
      </plugin> 
      <!-- TODO remove? --> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-failsafe-plugin</artifactId> 
       <version>2.16</version> 
       <executions> 
        <execution> 
         <id>default</id> 
         <configuration> 
          <skip>true</skip> 
         </configuration> 
        </execution> 
        <execution> 
         <id>integration-test</id> 
         <goals> 
          <goal>integration-test</goal> 
         </goals> 
        </execution> 
        <execution> 
         <id>verify</id> 
         <goals> 
          <goal>verify</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 

</project> 

ответ

0

Maven не смог найти зависимость - com.loop: microapplicazione2-widgetset: банку: 0,2, я думаю, что это ваш артефакт также. Вы должны построить его (это , как-widgetset проекта, а не microapplicazione2-щ) сначала с MVN чистую установку (чтобы добавить его в свой локальный репозиторий) или развернуть на вашем Nexus (если вы его используете)

Посмотрите на свой pom.xml

<dependency> 
      <groupId>${project.groupId}</groupId> 
      <artifactId>as-widgetset</artifactId> 
      <version>${project.version}</version> 
</dependency> 

Это зависимость, я говорю. Его не удалось найти в вашем локальном репо, вам нужно его сначала создать

+0

Как вы можете прочитать, я пытаюсь это сделать. Но у меня такая же ошибка. Даже с en empty vaadin пример приложения. – Korsmakolnikov

+0

вы строите военный проект, а не банку. пожалуйста, добавьте своего pom.xml – Mysterion

+0

Я редактирую вопрос с pom-файлом пустого приложения, которое имеет ту же проблему – Korsmakolnikov

0

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

Гадать здесь местоположения, но попробуйте следующее первый:

cd /Users/BlackSheepII/Sites/microapplicazione/sprint2/microapplicazione2 
mvn clean install 

А затем перейти к проекту UI и попытаться строить эту.

+0

Аналогичная ситуация была успешно решена здесь: http://stackoverflow.com/questions/28137684/why-when-i-run-a-project-created-with-maven-on- причал-это-это-не-найден-404/28141637 # 28141637 – eeq

0

Ни установка локального репозитория, ни чистая установка (которую я уже пытаюсь сделать) могут решить проблему. Во всяком случае, я попробовал с Mac, практически идентичным моему, и он создает и запускает пустой проект vaadin. Поэтому я снова и снова удаляю и снова устанавливаю: maven, java. Что-то изменилось, и у меня ошибка компиляции. Затем я приношу Mac для поддержки команды, они жестоко ее перезагружают и приносят мне чистую установку mac os, поэтому я снова пытаюсь все, и это работает (просто причал не запускается, но это еще одна история, и все проекты работают на tomcat хорошо). Так что, вероятно, что-то в classpath не работает должным образом. Боюсь, я никогда не узнаю, что это было. Но это была простая проблема с конфигурацией. Как я понял, используя maven, вы не обязаны использовать локальный репозиторий.

Смежные вопросы