我想扫描其他目录(对于profile-Files):
<scanInclude>
<path>
${project.basedir}/src/main/profiles
</path>
</scanInclude>
正在工作,在Debug-Output
中可见[INFO] Entering C:/..common/common-api/src/main/profiles
[DEBUG] Scanning /weld.profile
找到的文件在Neo4J中按预期显示:
match (f:File) where f.fileName ends with ".profile" return f;
返回文件。
但是,没有:CONTAINS与包含文件的目录/项目的关系(与例如beans.xml文件相反)。
有一个:CONTAINS关系,但仅限于文件的绝对路径的文件节点,该文件节点未标记为目录,工件或容器。
有没有办法通过配置创建这种关系? 也许是通过
<scope>
...
</scope>
我不知道<scope>
的正确/可能值,但是......
此致 汤姆
答案 0 :(得分:0)
scanInclude应生成一个Directory
标记的节点,表示${project.basedir}/src/main/profiles
,该节点由代表Maven项目的节点的CONTAINS
关系引用。
目录本身应该为其中的所有文件提供CONTAINS
关系(例如weld.profile
)。
作为Cypher模式,结构应如下所示:
(project:Maven:Project)-[:CONTAINS]->(profiles:Directory{name:"profiles"}),
(profiles)-[:CONTAINS]->(profile:File{name:"weld.profile"})
你能验证一下吗?
scope参数为插件提供了有关内容的提示,例如:如果目录是Java编译器的输出文件夹,则“java:classpath”范围将激活字节码扫描程序。