OpenJDK给出错误:包org.jboss.weld.context.bound不存在

时间:2014-02-05 13:20:57

标签: java maven tomcat openjdk

我有一个在Oracle JDK 7下编译好的Web应用程序,但在OpenJDK 7下出现以下错误:

error: package org.jboss.weld.context.bound does not exist

错误是指我的代码中的导入:

import org.jboss.weld.context.bound.BoundRequestContext;

在我的pom.xml中,我有以下与焊接相关的依赖项:

<dependency>
  <groupId>org.jboss.weld</groupId>
  <artifactId>weld-core</artifactId>
  <version>1.1.8.Final</version>
  <exclusions>
    <exclusion>
      <artifactId>jsr250-api</artifactId>
      <groupId>javax.annotation</groupId>
    </exclusion>
  </exclusions>
</dependency>
<dependency>
  <groupId>org.jboss.weld.servlet</groupId>
  <artifactId>weld-servlet-core</artifactId>
  <version>1.1.8.Final</version>
</dependency>
<dependency>
  <groupId>org.jboss.weld.se</groupId>
  <artifactId>weld-se-core</artifactId>
  <version>1.1.8.Final</version>
</dependency>

有没有办法让它使用OpenJDK进行编译?

1 个答案:

答案 0 :(得分:2)

问题不在于OpenJDK的错。您很可能会遇到与Oracle标记的JDK或第三方Java编译器相同的问题...如果您使用相应的编译器进行了等效的构建。

问题很可能是由不正确的Maven依赖引起的。

根据GrepCode,该类(org.jboss.weld.context.bound.BoundRequestContext)在“weld-api”,“weld-servlet”,“weld-se”和“weld-osgi-bundle”中定义。尝试添加其中一个作为依赖项。

<强>更新

this page判断,“weld-api”可能是要走的路。您可能希望彻底阅读它以找出推荐的依赖项集。