我正在尝试使用图形数据库 Blazegraph 的远程实例,这需要调用RemoteRepositoryManager
的构造函数。该调用如下所示(serviceURL
是我的远程 Blazegraph 服务器的地址):
val repo = new RemoteRepositoryManager(serviceURL, false /* useLBS */ )
当我在 Scalatra-SBT 项目中运行代码时,我收到 Jetty 类SocketAddressResolver
抛出的以下错误:
Exception in thread "main" java.lang.InstantiationError: org.eclipse.jetty.util.SocketAddressResolver
at org.eclipse.jetty.client.HttpClient.doStart(HttpClient.java:209)
at com.bigdata.rdf.sail.webapp.client.AutoCloseHttpClient.doStart(AutoCloseHttpClient.java:71)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at com.bigdata.rdf.sail.webapp.client.DefaultHttpClientFactory.newInstance(DefaultHttpClientFactory.java:194)
at com.bigdata.rdf.sail.webapp.client.RemoteRepositoryManager.<init>(RemoteRepositoryManager.java:439)
at com.bigdata.rdf.sail.webapp.client.RemoteRepositoryManager.<init>(RemoteRepositoryManager.java:358)
at com.example.app.BlazegraphRemoteModeConnection$.<init>(BlazegraphRemoteModeConnection.scala:31)
at com.example.app.BlazegraphRemoteModeConnection$.<clinit>(BlazegraphRemoteModeConnection.scala)
at com.example.app.BlazegraphRemoteModeConnection.main(BlazegraphRemoteModeConnection.scala)
我不确定导致这一结果的原因;但是,同事能够在非Scalatra SBT 项目中成功运行此代码。我用来提供远程服务器地址的URL证明可行,所以问题不存在。我正在寻找一些建议,我可以采取措施来解决这个问题。
答案 0 :(得分:0)
我有完全相同的问题。我相信问题是Blazegraph支持旧版本的Jetty。
用它替换Jetty依赖关系解决了它。
"org.eclipse.jetty" % "jetty-webapp" % "8.1.8.v20121106" % "container;compile"