【问题标题】:Maven build fails, because it does not recognize a .jar added to the build pathMaven 构建失败,因为它无法识别添加到构建路径的 .jar
【发布时间】:2017-10-17 22:57:39
【问题描述】:
在 Eclipse 中,我已将 kafka-clients-jms.jar 添加到项目的构建路径中。
我在 Eclipse 中没有收到任何错误,但是当我运行 mvn clean install 时它失败了,因为它找不到我添加的 .jar 中的 KafkaJmsConnectionFactory 类到构建路径。
不确定如何解决此问题。有什么想法吗?
【问题讨论】:
标签:
java
eclipse
maven
apache-kafka
【解决方案1】:
手动将库添加到 Eclipse 的构建路径不会自动将其添加到 POM 文件中。
从缺少的类来看,您似乎正在尝试在 Maven 项目中使用托管在 GitHub 上的库:https://github.com/adispennette/apache-kafka-jms
由于 GitHub 不是 Maven 存储库,您需要先手动将工件安装到本地存储库。
$ mvn install:install-file -Dfile=kafka-clients-jms.jar -DgroupId=org.apache.kafka -DartifactId=kafka-clients-jms -Dversion=0.8.2.2-SNAPSHOT -Dpackaging=jar
然后将以下内容添加到 POM 文件中:
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients-jms</artifactId>
<version>0.8.2.2-SNAPSHOT</version>
</dependency>
【解决方案2】:
当您手动将 jar 添加到 Eclipse 中的构建路径时,它只会添加到 Eclipse 中的依赖项中,而不是当您从命令行运行 maven 时添加到类路径中。将 jar 添加到 pom.xml 中的 dependencies。
建议始终在 pom.xml 中维护您的依赖关系,并使用 maven 的 eclipse 插件(或 Eclipse 的 Maven 插件)使其与您的 Eclipse 项目设置保持同步。