【问题标题】:The import javax.inject cannot be resolved while import Guava source导入 Guava 源时无法解析导入 javax.inject
【发布时间】:2013-09-04 14:14:37
【问题描述】:

我想使用Guava's TypeToken,然后我从here 下载了 Guava Release 14.0。 (我假设 14.0 比 15.0 rc 更稳定。)

guava-14.0.1-sources.jar (Source) 
http://search.maven.org/remotecontent?filepath=com/google/guava/guava/14.0.1/guava-14.0.1-sources.jar

将下载的guava-14.0.1-sources.jar解压到一个文件夹中。

然后我在 Eclipse 中创建了一个 Java 1.7 项目。

并通过Java Build Path -> Source -> Link Source...链接Eclipse中的源代码。

请注意,我使用(也不知道如何使用)任何构建系统,例如 Maven。

首先我遇到了The import javax.annotation.Nullable cannot be resolved 的问题。 但这已经解决了。 我跟着线程herethis page 下载jsr305-2.0.1.jar。 (我假设 2.0.1 是最新版本。)

其次,我遇到了rt.jar access restriction 问题,例如this one这也解决了,只需重新添加 JRE 系统库,就像那里的答案一样。

现在我遇到了这个我无法解决的问题,并且没有来自网络的解决方案。

在包com.google.common.util.concurrentServiceManager中,有一些编译错误。

import javax.inject.Inject;         // The import javax.inject cannot be resolved
import javax.inject.Singleton;      // The import javax.inject cannot be resolved

据我了解,这是与“第一个问题”类似的问题。但是jsr305-2.0.1.jar包含javax.annotation.Nullable,但不包含javax.inject.*。我需要的是一个包含 javax.inject.* 的 Java 库。

你能帮忙吗?非常感谢!

【问题讨论】:

  • P.S.在另一个项目中,我从the Guava Release 下载了guava-14.0.1.jar。在Java Build Path -> Libraries -> Add External JARs... 中将它添加到我的Eclipse 项目中。我得到了上述三个问题中的一个。它工作得很好。但我想研究(并可能修改)源代码。

标签: eclipse import guava java


【解决方案1】:

javax.inject 包在 Java EE 中提供。如果您出于某种原因需要在 Java SE 中使用它,您可以显式地包含一个带有 API interfaces 的 jar。 Maven Central 有一个实现的链接 (javax.inject:javax.inject)。实际上使用 Maven 会让生活变得更简单,但您可以下载 jar 文件并手动包含它。

【讨论】:

    【解决方案2】:

    你可以得到javax.inject jar here。不需要使用maven,下载.jar即可。

    【讨论】:

    • 没有什么可下载的,只有一堆信息/描述的链接
    • @Yokhen 有版本 1。单击它,您将获得需要添加的 pom.xml 依赖项 sn-p。 Maven 完成其余的工作。
    • @Yokhen 在Files下也可以下载.jar
    • LicenseCategoriesTagsUsed By。没有Files
    • @Yokhen 点击版本 1。
    猜你喜欢
    • 2022-11-19
    • 2021-09-17
    • 2021-04-18
    • 2021-04-23
    • 1970-01-01
    • 2022-07-28
    • 2023-01-09
    • 1970-01-01
    • 2021-10-10
    相关资源
    最近更新 更多