无法让 Stardog 在 Mac OS X 上运行

ste*_*ste 5 java stardog

我刚刚下载了 Stardog,并尝试在我的计算机 (Mac OS X 10.14.2) 上运行它。

\n\n

我使用ZSHshell,并在我的文件中添加了以下两行.zshrc

\n\n
export STARDOG_HOME="/Applications/stardog-6.1.0"\nexport PATH="$PATH:$STARDOG_HOME/bin"\n
Run Code Online (Sandbox Code Playgroud)\n\n

以下是我的全部$PATH变量:

\n\n
\xe2\x9e\x9c  echo $PATH\n/Users/my_user/.nvm/versions/node/v11.6.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/stardog-6.1.0/bin\n
Run Code Online (Sandbox Code Playgroud)\n\n

以下是我的java版本:

\n\n
\xe2\x9e\x9c  java --version\nopenjdk 11.0.1 2018-10-16\nOpenJDK Runtime Environment 18.9 (build 11.0.1+13)\nOpenJDK 64-Bit Server VM 18.9 (build 11.0.1+13, mixed mode)\n
Run Code Online (Sandbox Code Playgroud)\n\n

我复制了许可证/Applications/stardog-6.1.0,然后尝试运行 \nstardog-admin server start但这是输出:

\n\n
WARNING: An illegal reflective access operation has occurred\nWARNING: Illegal reflective access by com.google.inject.internal.cglib.core.$ReflectUtils$2 (file:/Applications/stardog-6.1.0/client/api/guice-4.0.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)\nWARNING: Please consider reporting this to the maintainers of com.google.inject.internal.cglib.core.$ReflectUtils$2\nWARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations\nWARNING: All illegal access operations will be denied in a future release\nWARN  2019-01-25 13:50:03,228 [main] com.complexible.common.memory.PlatformDependent:<init>(144): sun.misc.VM is not available\nThere was an error initializing Stardog; one or more dependencies could not be satisfied. Please verify your classpath is correct.\nThe initialization errors were:\n *  Error injecting constructor, java.lang.ExceptionInInitializerError\n        com.complexible.stardog.StardogKernel.<init>()\n        com.complexible.stardog.StardogKernel\n    Caused by:\njava.lang.ExceptionInInitializerError\n    at com.complexible.memory.memoryblock.MemoryBlockPool.allocateAll(MemoryBlockPool.java:181)\n    at com.complexible.memory.memoryblock.MemoryBlockPool.<init>(MemoryBlockPool.java:50)\n    at com.complexible.memory.memoryblock.MemoryContext.createMemoryBlockPool(MemoryContext.java:180)\n    at com.complexible.memory.memoryblock.MemoryContext.<init>(MemoryContext.java:65)\n    at com.complexible.stardog.StardogKernel.initMemoryContext(StardogKernel.java:703)\n    at com.complexible.stardog.StardogKernel.<init>(StardogKernel.java:491)\n    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)\n    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)\n    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)\n    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)\n    at com.google.inject.internal.DefaultConstructionProxyFactory$2.newInstance(DefaultConstructionProxyFactory.java:86)\n    at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)\n    at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)\n    at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)\n    at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)\n    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)\n    at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)\n    at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)\n    at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)\n    at com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:56)\n    at com.google.inject.internal.InjectorImpl$2$1.call(InjectorImpl.java:1016)\n    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)\n    at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1012)\n    at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1051)\n    at com.complexible.stardog.Stardog.initKernel(Stardog.java:213)\n    at com.complexible.stardog.Stardog.<init>(Stardog.java:206)\n    at com.complexible.stardog.Stardog.<init>(Stardog.java:60)\n    at com.complexible.stardog.Stardog$StardogBuilder.create(Stardog.java:597)\n    at com.complexible.stardog.cli.impl.ServerStart.call(ServerStart.java:165)\n    at com.complexible.stardog.cli.impl.ServerStart.call(ServerStart.java:41)\n    at com.complexible.stardog.cli.CLIBase.execute(CLIBase.java:55)\n    at com.complexible.stardog.cli.admin.CLI.main(CLI.java:187)\nCaused by: java.lang.NullPointerException\n    at org.apache.commons.lang3.SystemUtils.isJavaVersionAtLeast(SystemUtils.java:1642)\n    at com.complexible.memory.util.MMBits.<clinit>(MMBits.java:37)\n    ... 32 more\nUnable to provision, see the following errors:\n\n1) Error injecting constructor, java.lang.ExceptionInInitializerError\n  at com.complexible.stardog.StardogKernel.<init>(StardogKernel.java:277)\n  at com.complexible.stardog.StardogKernel.class(StardogKernel.java:277)\n  while locating com.complexible.stardog.StardogKernel\n  while locating com.complexible.stardog.Kernel\n\n
Run Code Online (Sandbox Code Playgroud)\n\n

我缺少什么?

\n

Ste*_*n C 4

Stardog 的文档(Stardog 6.1.0(20191 月 16 日))指出:

\n
\n

要求

\n

它只是没有比这更简单的了:Stardog 在 Java 8 上运行。

\n
\n
\n

安装 Java 8。

\n

我预计 Stardog 的供应商在时机成熟时会发布一个可在 Java 11 上运行的版本,但我在他们的网站上看不到任何公告。(有一个 Stardog 7.0.0 Beta...但发行说明没有提到 Java 11。)

\n
\n

更新:Stardog 9.0已更新至Java 11;请参阅发行说明。系统要求页面目前显示仅支持 Java 11。

\n

要点是……检查 Stardog 文档以了解您尝试使用的版本。

\n