繁体   English   中英

Maven没有下拉正确的JClouds-Chef依赖树

[英]Maven not pulling down correct JClouds-Chef dependency tree

我试图弄清楚如何使用JClouds-Chef库来配置VM。 根据他们的安装指南,我可以仅创建一个如下所示的pom.xml

<?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">
    <modelVersion>4.0.0</modelVersion>
    <properties>
        <jclouds.version>1.7.3</jclouds.version>
    </properties>
    <groupId>com.mycompany.app</groupId>
    <artifactId>my-app</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <dependency>
            <groupId>org.apache.jclouds</groupId>
            <artifactId>jclouds-all</artifactId>
            <version>${jclouds.version}</version>
        </dependency>
    </dependencies>
</project>

并运行mvn dependency:copy-dependencies ,它将拉下JClouds-Chef所需的所有JAR。

因此,我这样做了,然后将所有JAR( 很多 )添加到了我项目的buildpath中。 然后,我尝试创建ChefContext实例(就像他们的教程显示的那样):

ChefContext context = null;

Eclipse无法解析/查找ChefContext类。 肯定地,在扫描了Maven下载的JAR之后, ChefContext不会出现在任何地方!

所以我问:**获取组成JClouds-Chef及其所有依赖项的所有JAR所需的确切步骤是什么?*

您必须显式将Chef添加到依赖项节中:

<dependency>
  <groupId>org.apache.jclouds.api</groupId>
  <artifactId>chef</artifactId>
  <version>${jclouds.version}</version>
</dependency>

您可以在jclouds-examples中查阅Chef-basics,以获取工作示例。

添加该依赖关系就足够了。 或者,如果要使用Enterprise Chef特定功能,则可以添加以下功能:

<dependency>
    <groupId>org.apache.jclouds.provider</groupId>
    <artifactId>enterprisechef</artifactId>
    <version>${jclouds.version}</version>
</dependency>

这是您唯一需要配置的东西。 jclouds将负责在您配置的节点上安装Chef和所有必需的依赖项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM