首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在OSGi容器中使用Squeryl

在OSGi容器中使用Squeryl
EN

Stack Overflow用户
提问于 2015-05-31 21:51:34
回答 1查看 63关注 0票数 0

是否有人成功地让Squeryl在OSGi环境中工作,特别是在Karaf3.03上。

到目前为止,我已经获得了要加载的各个依赖项,scala库、squeryl和jdbc driver.The安装的包如下所示:

代码语言:javascript
复制
51 | Resolved |  80 | 0.3.0.SNAPSHOT                            | ac.za.cput.pe.model                           
52 | Active   |  80 | 2.11.6.v20150224-172222-092690e7bf        | Scala Standard Library                        
53 | Active   |  80 | 0                                         | wrap_mvn_org.squeryl_squeryl_2.10_0.9.5-6     
54 | Active   |  80 | 2.10.0.v20121205-112020-VFINAL-18481cef9b | Scala Standard Library                        
55 | Active   |  80 | 0                                         | wrap_mvn_cglib_cglib-nodep_2.2                
56 | Active   |  80 | 0                                         | wrap_mvn_org.scala-lang_scalap_2.10.0         
57 | Active   |  80 | 2.10.0.v20121205-112020-VFINAL-18481cef9b | Scala Compiler                                
58 | Active   |  80 | 2.10.0.v20121205-112020-VFINAL-18481cef9b | Scala Reflect                                 
59 | Active   |  80 | 0                                         | wrap_mvn_postgresql_postgresql_9.1-901-1.jdbc4

在我的包中,我有如下代码:

代码语言:javascript
复制
Class.forName("org.postgresql.Driver")
SessionFactory.concreteFactory = Some(()=>
  Session.create(
    java.sql.DriverManager.getConnection("jdbc:postgresql://localhost:5432/pe","postgres"
    ,"12345"),new PostgreSqlAdapter
  )
)

它基本上是试图创建斜面会话工厂。

然而,当我启动karaf时,这是我遇到的错误:

加载程序约束冲突:当解析方法"org.squeryl.SessionFactory$.concreteFactory_$eq(Lscala/Option;)V“时,类装入器(当前类的org/apache/felix/framework/BundleWiringImpl$BundleClassLoaderJava5)实例,ac/za/cput/pe/model/activator/Activator )和类加载器(已解析类的org/apache/felix/framework/BundleWiringImpl$BundleClassLoaderJava5)实例,org/squeryl/SessionFactory$,对于签名中使用的concreteFactory_$eq类型有不同的类对象)

有谁有什么想法吗?我还有几个小时就从阳台上跳出来了。

EN

回答 1

Stack Overflow用户

发布于 2015-06-01 07:54:35

看上去你有很多不同的罐子。首先,确保正确导入了所有依赖项。第二,确保不将这些依赖项部分嵌入到自己的包中。关于这个问题,错误信息是非常清楚的。

您编译的版本与在运行时提供给您的版本不同。这可能是因为一个错误的导入(确保版本匹配),或者您在包中包含了不同版本的包。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30563080

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档