我有一个结构如下的项目:
myProject
+ Annotations
- pom.xml
+ projectA
+ jqassistant
-my-rules.xml
- pom.xml
两者之间存在依赖关系,因为项目A中的某些类使用来自注释的自定义注释来注释。 projectA pom中的当前配置如下所示:
<configuration>
<concepts>
<concept>classpath:Resolve</concept>
</concepts>
<scanIncludes>
<scanInclude>
<path>../Annotations/target/classes</path>
<scope>java:classpath</scope>
</scanInclude>
</scanIncludes>
[...]
</configuration>
一切正常,但是现在我想通过到存储库的URL将注释用作Maven工件,因此我不必手动将其添加到每个项目中。
所以我正在寻找这样的东西:
<scanInclude>
<path>https://...</path>
<scope>java:classpath</scope>
</scanInclude>
如果我正确理解手册(https://buschmais.github.io/jqassistant/doc/1.2.0/),scanIncludes仅适用于目录/文件,不适用于URL。
有一个简单的解决方案吗?
答案 0 :(得分:0)
目前可悲的是不支持扫描URL。此时,您唯一的机会是使用Maven依赖项插件将依赖项复制到项目的目标文件夹(请参见https://maven.apache.org/plugins/maven-dependency-plugin/examples/copying-artifacts.html),然后像以前一样从那里进行扫描。
顺便说一句好消息:在以下版本之一中,可以通过指定工件过滤器将依赖项包括在Maven项目的扫描中。
顺便说一句:如果您只需要查看注释在项目代码中的使用位置,则无需扫描包含注释类的工件(可能您不扫描JPA API-Jar,而是使用注释从那里也提供概念)。您仍然可以获得模式(e)-[:ANNOTATED_BY]->(a:Annotation)-[:OF_TYPE]->(t:Type)
,唯一的不同是t将是仅提供属性fqn的节点,即注释类型的完全限定的类名。