дополнительный путь к классу для автономного сервера Neo4j - PullRequest
0 голосов
/ 31 мая 2018

Мы хотим запустить расширение neo4j (REST API), для которого требуются внешние JAR-файлы и конфигурации.

Несмотря на то, что мы можем добавить файлы jar в каталог {NEO4J_HOME}/plugin/, мы хотим положиться на уже установленнуюокружение, включающее (например) некоторые папки /opt/product/lib/ и /var/opt/product/conf/.

Это, конечно, очень просто при использовании встроенного сервера Neo4j, но как сделать то же самое при использовании автономного сервера Neo4j?

Можем ли мы сделать это?по конфигурации?любым хитрым способом?

Примечание: мы используем Neo4j v3.2 +, который использует скрипты PowerShell для запуска.

1 Ответ

0 голосов
/ 31 мая 2018

Отредактировав Get-Java.ps1 скрипт PowerShell следующим образом:

# Parse Java config settings - Additional ClassPath
$option = (Get-Neo4jSetting -Name 'dbms.jvm.additional.classpath' -Neo4jServer $Neo4jServer)
$ClassPath="$ClassPath;$([System.Environment]::ExpandEnvironmentVariables($option.Value))"
Write-Warning "WARNING: using classpath: $ClassPath";

$ShellArgs = @("-cp `"$($ClassPath)`""`
              ,'-server' `
              ,'-Dlog4j.configuration=file:conf/log4j.properties' `
              ,'-Dneo4j.ext.udc.source=zip-powershell' `
              ,'-Dorg.neo4j.cluster.logdirectory=data/log' `
              #,'-agentlib:jdwp=transport=dt_socket,address=8998,server=y' `
  )

и добавив следующую конфигурацию в neo4j.conf:

#********************************************************************
# JVM Parameters
#********************************************************************

dbms.jvm.additional.classpath=%MY_PRODUCT%/lib/*;%MY_PRODUCT%/conf/*

Но, как уже упоминалось, это требует ручного редактированияСценарии Neo4j PowerShell, которые не очень надежны.

Может ли он быть добавлен в качестве поддерживаемого параметра?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...