【问题标题】:Cannot find certain import on Java在 Java 上找不到某些导入
【发布时间】:2012-01-14 22:14:36
【问题描述】:

我正在处理一个简单 JSF 的示例,并且我正在使用 NetBeans。使用 NetBeans,我似乎无法解决这些导入问题

import javax.inject.Named; 

import javax.enterprise.context.SessionScoped; 

但是当我去Eclipse查看时,似乎没有问题。它们由 Eclipse 中创建的 Java 类找到。我想知道:我需要使用 NetBeans 导入或配置哪些内容,这样我的班级就不会出现看不到包的问题?

另外,我只是在发布这个问题之前更新了所有内容

【问题讨论】:

  • 您已经在 NetBeans 中安装了 Java Web 插件?
  • 您需要启用 CDI(上下文依赖注入 JSR-299),抱歉,我是 eclipse 用户,所以不知道如何在 netbeans 中指定它。 (对不起,最初是错误地添加了这个作为答案,删除了它,因为它不是)
  • 大家好,麻烦您了。但是在选择 glassfish 作为服务器后,它们现在似乎可以工作了。之前,我选择了tomcat。感谢您的回答:D
  • @simon 请将您的评论添加为答案并将其标记为已接受,以便其他人知道有解决方案。
  • @JonathanSpooner 好的,乔纳森,感谢您通知我。但我明天可能不得不像弹出框所说的那样接受答案:D

标签: java eclipse netbeans resolve


【解决方案1】:

在项目视图中展开库并添加“Java EE 6 API 库”,这将添加所需的包。所需文件是 javaee-api-6.0.jar。

或者作为maven依赖:

<dependency>
  <groupId>javax</groupId>
  <artifactId>javaee-api</artifactId>
  <version>6.0</version>
</dependency>

【讨论】:

    【解决方案2】:

    检查是否在您的应用程序构建路径中的 netbeans 中添加了正确的参考库。

    【讨论】:

    • 我相信 simon 知道这是问题所在。他在问“我需要导入哪些东西”
    • 嗨,现在可以了。我选择 glassfish 作为服务器来替换 tomcat。感谢您的建议
    【解决方案3】:

    在选择 glassfish 作为服务器后,它们现在似乎可以工作了。之前,我选择了我想没有我想使用的导入的 tomcat

    【讨论】:

      【解决方案4】:

      继续使用 Tomcat 开发的解决方案是将导入和注释更改为:

      import javax.faces.bean.ManagedBean;
      import javax.faces.bean.SessionScoped;
      
      @ManagedBean(name="namebean")
      @SessionScoped
      

      这是一个老问题,但有人可能有同样的问题......

      【讨论】:

        【解决方案5】:

        @ManagedBean 旨在与遗留应用程序服务器和独立 servlet 运行器一起使用。

        @Named 是与 Java EE 6 兼容的应用服务器的最佳选择。

        如果你使用的是 Maven,那么你可以在你的 pom 文件中使用上面提到的依赖。否则,您可以下载 javaee 6 api jar 文件 (javaee-api-6.0.jar) 并将其添加到您的类路径中。那应该让它工作。 它很容易在线获得。这是其中一个链接:
        http://www.java2s.com/Code/JarDownload/javaee-api/javaee-api-6.0.jar.zip

        【讨论】:

          猜你喜欢
          • 2023-03-28
          • 2011-03-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-09-08
          • 1970-01-01
          相关资源
          最近更新 更多