我正在尝试使用嵌入式数据库设置示例spring-boot-neo4j应用程序。我按照此处和此处的建议添加了所需的依赖项和配置。而这适用于绝对路径
spring.data.neo4j.uri=file://var/tmp/graph.db
我似乎找不到指定相对路径的方法。我试过了file://graph.db和file://./graph.db
和文件://~/图形。db但请获取此
Caused by: java.lang.IllegalArgumentException: URI has an authority component
at java.io.File.<init>(File.java:423) ~[na:1.8.0_112]
at org.neo4j.ogm.drivers.embedded.driver.EmbeddedDriver.createPermanentFileStore(EmbeddedDriver.java:211) ~[neo4j-ogm-embedded-driver-2.0.5.jar:na]
at org.neo4j.ogm.drivers.embedded.driver.EmbeddedDriver.configure(EmbeddedDriver.java:102) ~[neo4j-ogm-embedded-driver-2.0.5.jar:na]
尝试删除file://
并使用graph.db
或。/graph.db
但获取URI不是绝对的
尝试file:./graph.db
但获取URI不是分层的
我想使用相对于项目位置(或主文件夹)的路径,有人可以指出如何指定这样的路径。我使用的是neo4j-ogm 2.0.5、gradle 2.14、spring-boot 1.4.2和jdk 1.8。
谢谢
您可以使用${user.dir}解析绝对路径。
uri=file:${user.dir}/target/mock_data/neo4j_${random.uuid}/graph.db
uri=file:${user.dir}/../neo4j_${random.uuid}/graph.db
目前,正如Thomas正确提到的,您不能将相对路径用于嵌入式数据存储和OGM。
您可以:
看看强大的跨平台解决方案:
@Value("${spring.data.neo4j.uri:default}")
private String neoUri;
@Bean
public Configuration neoConfig() throws URISyntaxException, IOException {
String path = neoUri;
Configuration.Builder builder = new Configuration.Builder();
if (!"default".equals(path)) {
LOG.info("Configured database uri: " + path);
path = path.replace('\\', '/');
URI uri = new URI(path);
if ("file".equals(uri.getScheme())) {
File file = new File(uri.getSchemeSpecificPart());
path = "file:///" + file.getCanonicalFile().getAbsolutePath().replace('\\', '/');
LOG.info("Absolute database path: " + path);
}
builder.uri(path);
}
// TODO: process other neo4j properties
return builder.build();
}
限制:不能将反斜杠用作目录名的一部分;)
这描述了 _neo4j-embedded_,让你在Python应用中嵌入Neo4j数据库的一个Python库。 从参考文档和这个章节的安装介绍分开,你可以参考:第 9 章 在Python应用中使用Neo4j。 这个工程在GitHub上面的源代码地址: https://github.com/neo4j/python-embedded 19.1. 安装 注意:Neo4j 数据库(来自社区版)本身就被包
我是kubernetes的新手,需要在openshift平台上使用k8s confimap将springboot应用程序的属性文件外部化。我已将属性文件保存在git repo中,作为“greeter.message=Spring Bootmyapplication.properties已在库伯内特斯上挂载为卷!”并使用“oc create confimap myconfig--from-file=
我有一个很大的swing应用程序,我想把javafx嵌入其中。我多次尝试这样做(通过遵循oracle教程等),但只有在声明一个新的JFrame以使用JFXPanel组件时才成功。但是,我不想使用新的框架,我想将我的Javafx代码合并到swing应用程序的根JFrame中。 我们可以将javaFX组件嵌入到JPanel而不是JFrame中吗?如果答案是肯定的,为什么我没有成功?
我正在尝试配置我的应用程序上下文,以便能够在我的应用程序中使用带有嵌入式图形的Neo4j服务器,但没有多大成功。我同时使用Spring数据(Mongo和Neo4j存储库方法)。这是我的应用程序上下文,未运行: 如果我不使用这种方法,只指定存储目录(注释行),那么一切都可以正常运行。我怀疑这是SDN和neo4j服务器之间的版本问题。这是我的POM: 它的父项作为依赖项Spring(核心、上下文、测试
问题内容: 我想从Java Web应用程序读取文件。我不想提供文件的绝对路径。我只想将文件放在Web应用程序的某个目录中。 要么 可以将其与.war文件(打包的Web应用程序)一起放置。 给文件的相对路径。我试过了,但是没有用。 ======== 更新 ======== 我将向客户交付文件(打包的Web应用程序)。该Web应用程序将读取一个文件(让我们说),该文件将由客户端复制到服务器。因此,我需
我需要使用Java运行嵌入高可用性模式的Neo4j。我下载了Neo4j的企业版,并对neo4j.properties文件进行了更改,如neo4j高可用性设置教程中所述。现在,如何使用这个修改过的neo4j.properties文件在高可用性模式下使用Java运行neo4j?