为了研究javax.inject的问题,我在IntelliJ IDEA中创建了极简级项目。
它只包含Main.java:
import javax.inject.Scope;
public class Main {
public static void main(String[] args) {}
}build.gradle
buildscript {
repositories {
mavenCentral()
}
}
apply plugin: 'java'
dependencies {
compileOnly 'javax.annotation:jsr250-api:1.0'
}和settings.gradle
rootProject.name = 'test'建造我得到的项目
错误:(1,20) java:包javax.inject不存在
javax有什么问题,为什么它不存在??
嗯,问题似乎不是针对javax的。试图从mavenCentral添加不同的依赖项,没有人工作。就像Gradle一样,根本不加载外部库。
解决了
问题在于repositories --它肯定在buildscript之外。
发布于 2017-12-30 15:12:16
只需将javax.inject依赖项
implementation 'javax.inject:javax.inject:1'发布于 2017-01-24 07:45:05
只编译依赖项与常规的“编译”依赖项有明显的不同。它们不包含在运行时类路径中,并且是非传递的,这意味着它们不包含在依赖的项目中。在使用Gradle项目依赖项时,以及在向Maven或Ivy存储库发布时也是如此。在后一种情况下,仅从发布的元数据中省略编译依赖项。
https://stackoverflow.com/questions/41822318
复制相似问题