gpt4 book ai didi

java - 为什么Gradle的java编译类路径不包含指定的依赖

转载 作者:行者123 更新时间:2023-12-03 03:10:23 24 4
gpt4 key购买 nike

我正在使用 gradle 构建一个 groovy/java 应用程序。
这一直很好,直到我向 google guice 3.0 添加了依赖项。
Gradle 没有将 guice jar 添加到编译类路径中,至少看起来是这样。
我收到这样的错误:

C:\dev\workspaces\initial>gradle -q compileJava
C:\dev\workspaces\initial\src\main\java\com\comp\test\solmon\di\GuiceDI.java:3: package com.google.inject does not exist
import com.google.inject.Guice;
^
C:\dev\workspaces\initial\src\main\java\com\comp\test\solmon\di\GuiceDI.java:4: package com.google.inject does not exist
import com.google.inject.Injector;

在我的 build.gradle 文件中,我有以下依赖项:
dependencies{
runtime 'com.beust:jcommander:1.27'
runtime "org.slf4j:slf4j-api:1.7.1"
runtime "ch.qos.logback:logback-classic:1.0.7"
runtime 'com.google.inject:guice:3.0'
testRuntime 'junit:junit:4+'
}

我正在使用它的 gradle 插件在 Springsource Tool Suite 2.9.2 中开发应用程序,它使用 gradles 依赖项管理来获取所有依赖项。 Sts 设法编译代码就好了,只是 gradle 失败了。
我尝试使用“--debug”参数运行 gradle 编译,但我看不到 gradle 为编译器提供了哪个类路径。

任何想法如何让 gradle 编译我的应用程序?

最佳答案

您已将 Guice 添加到运行时依赖项(即运行应用程序所需的依赖项,但不编译它)。将其添加到编译依赖项中:

dependencies {
...
compile 'com.google.inject:guice:3.0'
}

显然,编译依赖也是运行时依赖。

关于java - 为什么Gradle的java编译类路径不包含指定的依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12617327/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com