[
https://issues.redhat.com/browse/WFLY-11442?page=com.atlassian.jira.plugi...
]
Yeray Borges Santana commented on WFLY-11442:
---------------------------------------------
Yes, your right. it is a bit tricky and with some subtleties. I should have discussed the
methodology with Ranabir before moving on with this issue and advise about this. We
didn't talked about it.
The process I follow is a bit complex, though. I use
[
https://docs.oracle.com/javase/9/tools/jdeps.htm|jdeps] to find out code dependencies
together with a custom Java application that gives me a report based on module names, it
is an orientative report, still manual process is needed to verify the uses. I'm not
sure if it makes sense to make it available and count on it to find out dependencies, if
so, I have to work on it to make it a bit more useful.
The resources root of the affected JBoss module must be reviewed to find out any class
loading by using a String or other mechanism, service loader patterns should be also
reviewed. In general they should have been covered by the previous step, because a class
loading would require at minimum an interface, and if that interface exists, it will be
found by jdeps. The implementations could be in a different module. Even though, I think
we have to look for those patterns. A general knowledge of the module is also necessary,
the component lead should know these details, but sometimes they are so hide that the
removal is difficult to perform, even more when the component is big. This step usually is
done at PR review.
Having say that, if we are not 100% sure the dependency is no longer used or we do not
have a strong reason to remove it with a benefit, the best option is to not remove it.
Remove unused dependencies from org.jboss.as.ejb3
-------------------------------------------------
Key: WFLY-11442
URL:
https://issues.redhat.com/browse/WFLY-11442
Project: WildFly
Issue Type: Bug
Components: Server
Reporter: Yeray Borges Santana
Assignee: Ranabir Chakraborty
Priority: Major
Initial analisys checking only first level dependencies from the resource exposed by
{{org.jboss.as.ejb3}} shows that these dependencies are being unused:
* org.jboss.jts
* org.wildfly.security.elytron-web.undertow-server
* org.jboss.as.weld
* org.wildfly.clustering.marshalling.spi
* org.wildfly.clustering.marshalling.api
* org.wildfly.client.config
* org.hibernate
The task here is verify that they are not used by any other machanism besides of being a
first level dependency.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)