【问题标题】:Using guava in griffon gives Prohibited package exception在 griffon 中使用 guava 会导致 Prohibited package 异常
【发布时间】:2011-10-22 12:52:46
【问题描述】:

我正在使用 Griffon 并希望将 guava 库作为依赖项添加到我的项目中。但是,当我这样做时,即使不使用 1 类,我也会收到以下异常:

Compilation error: BUG! exception in phase 'canonicalization' in source unit
'/home/wdb/myproject/griffon-app/controllers/MyController.groovy' Prohibited
package name: java.util.concurrent

知道可能出了什么问题吗?这是我的 java 版本(在 Ubuntu 11.10 上):

wdb@wdb-laptop:~$ java -version
java version "1.6.0_27"
Java(TM) SE Runtime Environment (build 1.6.0_27-b07)
Java HotSpot(TM) Server VM (build 20.2-b06, mixed mode)

我发现this link 谈到了使用引导类路径来解决类似问题,但这似乎有点激烈。

问候,

维姆

【问题讨论】:

    标签: guava griffon


    【解决方案1】:

    我的疯狂猜测是我们的bootclasspath copy of java.util.concurrent.ExecutorService(由于 JDK5 和 JDK6 之间的不兼容更改而必需)出现在您的类路径中。我不太了解 Maven,但我会这么认为,因为we identify the dependency as "provided",这个shouldn't be happening

    这不是一个真正的答案,但我希望它足以让你或其他人开始。

    【讨论】:

      【解决方案2】:

      一定是 Griffon 不尊重“提供”的范围。我设法通过将BuilderConfig.groovy 编辑为:

      compile( 'com.google.guava:guava:10.0.1' ) { 
          exclude 'guava-bootstrap' 
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-01-03
        • 1970-01-01
        • 2018-11-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多