|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.apache.maven.plugin.AbstractMojo
com.sun.enterprise.build.AnalyzeMojo
public class AnalyzeMojo
Analyzes dependency declaration and see if there's anything redundantly declared.
The common issue we have is that often distribution modules like PE and nucleus end up containing tons of modules, which makes it unclear as to what functionalities are really added.
This mojo is intended to be used interactively to solve this problem. The mojo will list up all the dependencies that are declared explicitly in POM, yet it's also available through transitive dependencies.
It is then a human's job to decide if the explicit dependency is justified; for exmaple, if your module X depends on another module Y, and both just so happens to rely on the same utility code Z, then you still want to keep that dependency explicit, because Y might stop depending on Z any time. On the other hand, if you depend on JSP, then the dependency to servlet is implified in JSP, so your explicit dependency to servle is probably unnecessary.
| Nested Class Summary | |
|---|---|
protected static interface |
AbstractGlassfishMojo.ArtifactFilter
|
| Field Summary | |
|---|---|
protected org.apache.maven.project.MavenProject |
project
The maven project. |
protected org.apache.maven.project.MavenProjectBuilder |
projectBuilder
|
| Fields inherited from interface org.apache.maven.plugin.Mojo |
|---|
ROLE |
| Constructor Summary | |
|---|---|
AnalyzeMojo()
|
|
| Method Summary | |
|---|---|
void |
execute()
|
protected Set<org.apache.maven.artifact.Artifact> |
findArtifacts(Set<org.apache.maven.artifact.Artifact> artifacts,
AbstractGlassfishMojo.ArtifactFilter filter)
Finds artifacts that match the given filter. |
protected Set<org.apache.maven.artifact.Artifact> |
findArtifactsOfScope(Set<org.apache.maven.artifact.Artifact> artifacts,
String scope)
|
protected Set<org.apache.maven.artifact.Artifact> |
findArtifactsOfType(Set<org.apache.maven.artifact.Artifact> artifacts,
String type)
Returns a set of Artifacts that have the given type. |
protected boolean |
isModule(org.apache.maven.artifact.Artifact a)
|
protected org.apache.maven.project.MavenProject |
loadPom(org.apache.maven.artifact.Artifact artifact)
Resolves the POM of the given artifact and parses it into MavenProject. |
| Methods inherited from class org.apache.maven.plugin.AbstractMojo |
|---|
getLog, getPluginContext, setLog, setPluginContext |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected org.apache.maven.project.MavenProject project
protected org.apache.maven.project.MavenProjectBuilder projectBuilder
| Constructor Detail |
|---|
public AnalyzeMojo()
| Method Detail |
|---|
public void execute()
throws org.apache.maven.plugin.MojoExecutionException,
org.apache.maven.plugin.MojoFailureException
org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoFailureException
protected boolean isModule(org.apache.maven.artifact.Artifact a)
throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException
protected org.apache.maven.project.MavenProject loadPom(org.apache.maven.artifact.Artifact artifact)
throws org.apache.maven.project.ProjectBuildingException
MavenProject.
org.apache.maven.project.ProjectBuildingException
protected Set<org.apache.maven.artifact.Artifact> findArtifacts(Set<org.apache.maven.artifact.Artifact> artifacts,
AbstractGlassfishMojo.ArtifactFilter filter)
protected Set<org.apache.maven.artifact.Artifact> findArtifactsOfType(Set<org.apache.maven.artifact.Artifact> artifacts,
String type)
Artifacts that have the given type.
protected Set<org.apache.maven.artifact.Artifact> findArtifactsOfScope(Set<org.apache.maven.artifact.Artifact> artifacts,
String scope)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||