Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add "Locations" to the Maven plugin #48

Open
chrisdutz opened this issue Dec 1, 2015 · 3 comments
Open

Add "Locations" to the Maven plugin #48

chrisdutz opened this issue Dec 1, 2015 · 3 comments
Assignees
Labels
status:waiting for interest It is unclear to the team if the requested enhancement can be usefull for a wider usergroup topic:documentation Changes or enhancements to the documentation are necessary for this issue type:enhancement Enhancement of the functionality of the software

Comments

@chrisdutz
Copy link

Starting with Maven 3 the "org.apache.maven.model.Dependenc" has a map of "locations" in which Maven specifies from which location a "version", "scope", ... is managed. This information could be extremely helpfull for rules like "Third Party Dependencies are managed by the Main Company Pom".

@obfischer
Copy link
Contributor

Hi @chrisdutz, we already have plans to extend and to improve the Maven integration and to provide much more information via the generated graph model in one of the next versions.

@DirkMahler
Copy link
Member

This feature requires a change in the data model, current is:

(pom:Maven:Pom)-[dependency:DECLARES_DEPENDENCY]-(artifact:Artifact)

where dependency has some properties (e.g. scope). After the change we would need an additional node:

(pom:Maven:Pom)-[:DECLARES_DEPENDENCY]->(dependency:Maven:Dependency),
(dependency)-[:IS_ARTIFACT]->(artifact:Artifact),
(dependency)-[:HAS_LOCATION]->(???) // is it the POM, e.g. :Maven:Pom?

We could also add extra information, e.g.

(dependency)-[:EXCLUDES_ARTIFACT]->(excludedArtifact:Artifact)

@chrisdutz
Copy link
Author

I think this is very valuable information explicitly if you want to create rules such as "third party libs have to be specified in our central dependencyManagement" ... otherwise I think people will simply omit the version and add a dependencyManagement block to the local pom. With this I could explicitly check in what artifact a dependency was managed.

@DirkMahler DirkMahler self-assigned this Feb 1, 2016
@obfischer obfischer transferred this issue from jQAssistant/jqassistant Feb 27, 2020
@obfischer obfischer added topic:documentation Changes or enhancements to the documentation are necessary for this issue type:enhancement Enhancement of the functionality of the software labels Feb 27, 2020
@obfischer obfischer added the status:waiting for interest It is unclear to the team if the requested enhancement can be usefull for a wider usergroup label Mar 18, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status:waiting for interest It is unclear to the team if the requested enhancement can be usefull for a wider usergroup topic:documentation Changes or enhancements to the documentation are necessary for this issue type:enhancement Enhancement of the functionality of the software
Projects
None yet
Development

No branches or pull requests

3 participants