1

我正在尝试使用图形数据库Blazegraph的远程实例,这需要调用 a 的构造函数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 被证明是有效的,所以问题不存在。我正在寻找解决此问题的步骤中的一些建议。

4

1 回答 1

0

我有完全相同的问题。我相信问题是 Blazegraph 支持旧版本的 Jetty。

用这个替换 Jetty 依赖项解决了它。

  "org.eclipse.jetty" % "jetty-webapp" % "8.1.8.v20121106" % "container;compile"
于 2018-02-23T10:48:12.003 回答