我正在尝试弄清楚如何使用JClouds-Chef库来配置VM。根据他们的Installation Guide,我可以创建一个看似如下的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(有一个很多)添加到我的项目的构建路径中。然后我尝试创建ChefContext
实例(就像他们的教程中显示的例子一样):
ChefContext context = null;
Eclipse无法解析/找到ChefContext
类。在扫描了Maven下载的JAR之后,果然,ChefContext
没有出现在任何地方!
所以我问:**我需要具备哪些步骤才能获得构成JClouds-Chef及其所有依赖项的所有JAR?*
答案 0 :(得分:2)
您必须明确地将chef添加到您的依赖项节:
<dependency>
<groupId>org.apache.jclouds.api</groupId>
<artifactId>chef</artifactId>
<version>${jclouds.version}</version>
</dependency>
您可以在jclouds-examples中查阅chef-basics以获取工作示例。
答案 1 :(得分:2)
添加该依赖项应该足够了。或者,如果要使用Enterprise Chef特定功能,则可以添加以下功能:
<dependency>
<groupId>org.apache.jclouds.provider</groupId>
<artifactId>enterprisechef</artifactId>
<version>${jclouds.version}</version>
</dependency>
这是您需要配置的唯一内容。 jclouds将负责在您提供的节点中安装Chef和所有必需的依赖项。