Dependency injection @PersistenceContext无法解析为类型

Dependency injection @PersistenceContext无法解析为类型,dependency-injection,annotations,javabeans,managed-bean,Dependency Injection,Annotations,Javabeans,Managed Bean,我运行的代码中有一个依赖项@PersistenceContext和一个字段private EntityManager em;这两个错误都无法解析为一个类型,此错误的含义是什么,如何修复它? 代码如下: package org.jboss.tools.examples.util; import java.util.logging.Logger; import javax.enterprise.context.RequestScoped; import javax.en

我运行的代码中有一个依赖项
@PersistenceContext
和一个字段
private EntityManager em
;这两个错误都无法解析为一个类型,此错误的含义是什么,如何修复它?
代码如下:

package org.jboss.tools.examples.util;    

import java.util.logging.Logger;     
import javax.enterprise.context.RequestScoped;     
import javax.enterprise.inject.Produces;     
import javax.enterprise.inject.spi.InjectionPoint;     
import javax.faces.context.FacesContext;     

/**    
 * This class uses CDI to alias Java EE resources, such as the persistence context, to     
CDI beans    
 *     
 * <p>    
 * Example injection on a managed bean field:    
 * </p>    
 *     
 * <pre>    
 * &#064;Inject    
 * private EntityManager em;    
 * </pre>    
 */    
public class Resources {    
   // use @SuppressWarnings to tell IDE to ignore warnings about field not being         referenced directly    
   @SuppressWarnings("unused")    
   @Produces    
   @PersistenceContext    
   private EntityManager em;    

   @Produces    
   public Logger produceLog(InjectionPoint injectionPoint) {    
      return Logger.getLogger(injectionPoint.getMember().getDeclaringClass().getName());    
   }    

   @Produces    
   @RequestScoped    
   public FacesContext produceFacesContext() {    
      return FacesContext.getCurrentInstance();    
   }    
}    
package org.jboss.tools.examples.util;
导入java.util.logging.Logger;
导入javax.enterprise.context.RequestScope;
导入javax.enterprise.inject.products;
导入javax.enterprise.inject.spi.InjectionPoint;
导入javax.faces.context.FacesContext;
/**    
*此类使用CDI将Java EE资源(如持久性上下文)别名为
CDI豆
*     
*
*托管bean字段上的注入示例:
*

* * * @注射 *私人实体管理者; * */ 公共类资源{ //使用@SuppressWarnings告诉IDE忽略关于未直接引用字段的警告 @抑制警告(“未使用”) @产生 @持久上下文 私人实体管理者; @产生 公共记录器produceLog(注入点注入点){ 返回Logger.getLogger(injectionPoint.getMember().getDeclaringClass().getName()); } @产生 @请求范围 public FacesContext produceFacesContext(){ 返回FacesContext.getCurrentInstance(); } }
您缺少PersistenceContext注释和EntityManager的导入语句


谢谢Anshu,现在我得到了:import javax.persistence无法解析import javax.persistence无法解析请确保您的类路径中有现在解析的所需库我有“NotEmpty无法解析为类型”
@NotEmpty
和“电子邮件无法解析为类型”
@Email
:)如果您使用的是IDE,您不能只执行组织导入吗?
import javax.persistence.PersistenceContext;
import javax.persistence.EntityManager;