实例化的可能原因Jetty的套接字地址解析器中的错误



我正在尝试使用图形数据库Blazegraph的远程实例,这需要调用RemoteRepositoryManager的构造函数。调用如下所示(serviceURL是我的远程Blazegraph服务器的地址):

val repo = new RemoteRepositoryManager(serviceURL, false /* useLBS */ )

当我在Scalatra-SBT项目中运行代码时,我收到以下错误,由JettySocketAddressResolver引发:

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)

我不确定是什么导致了这个结果;但是一位同事能够在非ScalatraSBT项目中成功运行此代码。我用来提供远程服务器地址的 URL 已被证明是有效的,因此问题不存在。我正在寻找一些可以解决此问题的步骤建议。

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

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

"org.eclipse.jetty" % "jetty-webapp" % "8.1.8.v20121106" % "container;compile"

最新更新