Hi,
as mentioned in the last Jakarta EE Platform
calls, Dirk, Gerd and me
did a little experiment in the CyberLand Code Camp
with jQAssistant
(
https://jqassistant.org/):
We created a dependency graph (as GraphML for yEd
and PlantUML with SVG
to be included in AsciiDoc) based on Maven
Central's last release
Jakarta EE 9.1 (see attachments).
jQAssistant can create such reports including
dependencies as graph,
including defining constraints with enforcement
and reporting of violations.
It is very flexible in use, because it uses a
Graph Database (Neo4J)
internally and Cipher to operate on the scanned
graph representation of
a project. In example during the experiment we
created a virtual
dependency to the specific Java SE Version.
A nice introduction video for jQA can be found
here:
https://vimeo.com/170797227
Dirk created a demo repo for further examination:
https://github.com/jqassistant-demo/jakarta-ee-dependencies
(without the
Java SE dependency yet)
Note: Look at the manual for the necessary JVM
parameter configuration
depending on the version and spend some time, if
you want to try jQA
yourself with Jakarta.
When view the results, expect some issues because
of the complexity of
the Jakarta EE dependencies, i.e. Firefox creates
some artefacts when
rendering the SVG (a reload helps) and the Eclipse
AsciiDoc plugin
preview might time out... ;-)
As you can see, there are a lot of things in 9.1
that need to be
verified (tool misconfiguration or true positive
finding) and
potentially to be fixed, like strange Maven Group
IDs (...sun...),
Artifact IDs, versions (RCs, different versions)
and dependencies (like
to JUnit from the API).
Hopefully, we will introduce it on one of the next
Jakarta EE Platform
calls.
Next steps would be to reintegrate the virtual
Java SE dependencies and
use the staging Maven repo for the current Jakarta
EE 10 state too.
Best,
Jan
PS: Hopefully this is helpful to define a target
project structure plan
with related naming conventions, that can be
verified automatically in
the future.
Am 01.12.21 um 07:01 schrieb Scott Stark:
I created a PR that adds
a dependency section to the web profile spec
that provides a graphical
view of the direct api dependencies using
the asciidoctor-diagram
plugin and graphviz as the format. An example
of the current graph is
attached.
https://github.com/eclipse-ee4j/jakartaee-platform/pull/440
_______________________________________________
jakartaee-platform-dev
mailing list
jakartaee-platform-dev@xxxxxxxxxxx
To unsubscribe from this
list, visit https://www.eclipse.org/mailman/listinfo/jakartaee-platform-dev