0
votes

I'm starting to develop for opendaylight controller project and i used the eclipse installer advanced mode way (link of the tutorial: https://github.com/vorburger/opendaylight-eclipse-setup) to install the eclipse already with the opendaylight controller project. So when i try to run the mvn clean install i get the error :

  • [ERROR] 'dependencies.dependency.version' for org.opendaylight.yang:yang-data-impl:jar is missing. @ line 54, column 17

When i go to the pom.xml of org.opendaylight.controller.dsbenchmark i've noticed that the pom defines the yang-data-impl dependency (groupId and ArtifactId tags) but dont have the version tag, however i've tried to insert a version tag (used 2.0.0-SNAPSHOT) but create this tag generate errors in others projects (projects of org.opendaylight.controller.benchmark-aggregator) and also generate another error that says the version (2.0.0-SNAPSHOT) cannot be found (Missing artifact org.opendaylight.yang:yang-data-impl:jar:2.0.0-SNAPSHOT).

I'm newbie in opendaylight controller system and i don't know what version or what i have to do, so someone can explain what i'm doing wrong or what i need read to learn how to fix this?

*Sorry for the english i'm not fluent
*I got errors before , dependencies missing, but i've fixed manually all of them (installing all the dependencies one by one)
*For now that's the only error that i'm getting


The pom.xml is here:

<?xml version="1.0" encoding="UTF-8"?>
<!-- vi: set et smarttab sw=4 tabstop=4: --><!--
Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.

This program and the accompanying materials are made available under the
terms of the Eclipse Public License v1.0 which accompanies this distribution,
and is available at http://www.eclipse.org/legal/epl-v10.html
-->
<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>
    <groupId>org.opendaylight.mdsal</groupId>
    <artifactId>binding-parent</artifactId>
    <version>0.12.0-SNAPSHOT</version>
    <relativePath/>
  </parent>

  <modelVersion>4.0.0</modelVersion>
  <groupId>org.opendaylight.controller</groupId>
  <artifactId>dsbenchmark</artifactId>
  <version>1.5.0-SNAPSHOT</version>
  <packaging>bundle</packaging>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.opendaylight.controller</groupId>
        <artifactId>mdsal-artifacts</artifactId>
        <version>1.7.0-SNAPSHOT</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <dependencies>
    <dependency>
      <groupId>org.opendaylight.controller</groupId>
      <artifactId>benchmark-api</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.opendaylight.controller</groupId>
      <artifactId>sal-binding-api</artifactId>
    </dependency>
    <dependency>
      <groupId>org.opendaylight.controller</groupId>
      <artifactId>sal-core-api</artifactId>
    </dependency>
    <dependency>
      <groupId>org.opendaylight.yangtools</groupId>
      <artifactId>yang-data-impl</artifactId>
    </dependency>
    <dependency> <!-- ERROR HERE!!!! -->
      <groupId>org.opendaylight.yang</groupId>
      <artifactId>yang-data-impl</artifactId>


    </dependency>
  </dependencies>

  <build>
    <pluginManagement>
        <plugins>
            <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
            <plugin>
                <groupId>org.eclipse.m2e</groupId>
                <artifactId>lifecycle-mapping</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <lifecycleMappingMetadata>
                        <pluginExecutions>
                            <pluginExecution>
                                <pluginExecutionFilter>
                                    <groupId>org.jacoco</groupId>
                                    <artifactId>
                                        jacoco-maven-plugin
                                    </artifactId>
                                    <versionRange>
                                        [0.7.2.201409121644,)
                                    </versionRange>
                                    <goals>
                                        <goal>prepare-agent</goal>
                                    </goals>
                                </pluginExecutionFilter>
                                <action>
                                    <ignore></ignore>
                                </action>
                            </pluginExecution>
                        </pluginExecutions>
                    </lifecycleMappingMetadata>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>
  </build>
</project>
1
Check the settings.xml that your maven refers to, it should have reference to ODL repository. - Karthik Prasad
i've checked the settings.xml and the refer repositories is the opendaylight-release and opendaylight-snapshots. - Kevin Costa

1 Answers

0
votes

Have you read the ODL Eclipse Setup FAQ, and tried all tips there?

For example, the custom Maven settings.xml which is required for it to download artifacts from http://nexus.opendaylight.org is automatically configured, but the very first time you need to restart Eclipse once.)

Do not touch any of the pom.xml - it should just work out-of-the-box, because in ODL CI all of these projects (like controller/benchmark/dsbenchmark) of course do build just fine.

Are ALL of your projects in Eclipse red, or just some?