diff --git a/.asf.yaml b/.asf.yaml
new file mode 100644
index 000000000..4110a1d10
--- /dev/null
+++ b/.asf.yaml
@@ -0,0 +1,37 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# see https://s.apache.org/asfyaml
+github:
+ description: "Apache Maven Dependency Plugin"
+ homepage: https://maven.apache.org/plugins/maven-dependency-plugin/
+ labels:
+ - java
+ - build-management
+ - maven-plugins
+ - maven-dependency-plugin
+ - maven
+ enabled_merge_buttons:
+ squash: true
+ merge: false
+ rebase: true
+ autolink_jira:
+ - MDEP
+notifications:
+ commits: commits@maven.apache.org
+ issues: issues@maven.apache.org
+ pullrequests: issues@maven.apache.org
+ jira_options: link label comment
diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs
new file mode 100644
index 000000000..fe2d0fe87
--- /dev/null
+++ b/.git-blame-ignore-revs
@@ -0,0 +1,21 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+# Change maven code style
+cc082ea7d4af7db78c521d59360d261ffbc1b184
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
new file mode 100644
index 000000000..7b7230f1f
--- /dev/null
+++ b/.github/dependabot.yml
@@ -0,0 +1,31 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+version: 2
+updates:
+ - package-ecosystem: "maven"
+ directory: "/"
+ schedule:
+ interval: "daily"
+ ignore:
+ # Jetty >=10 requires Java 11+
+ - dependency-name: "org.eclipse.jetty:*"
+ versions: [">= 10.0"]
+ - package-ecosystem: "github-actions"
+ directory: "/"
+ schedule:
+ interval: "daily"
+
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 6edb598f9..fd85bb33f 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -23,7 +23,7 @@ To make clear that you license your contribution under
the [Apache License Version 2.0, January 2004](http://www.apache.org/licenses/LICENSE-2.0)
you have to acknowledge this by using the following check-box.
- - [ ] I hereby declare this contribution to be licenced under the [Apache License Version 2.0, January 2004](http://www.apache.org/licenses/LICENSE-2.0)
+ - [ ] I hereby declare this contribution to be licensed under the [Apache License Version 2.0, January 2004](http://www.apache.org/licenses/LICENSE-2.0)
- [ ] In any other case, please file an [Apache Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
diff --git a/.github/workflows/maven-verify.yml b/.github/workflows/maven-verify.yml
new file mode 100644
index 000000000..970433585
--- /dev/null
+++ b/.github/workflows/maven-verify.yml
@@ -0,0 +1,29 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+name: Verify
+
+on:
+ push:
+ pull_request:
+
+jobs:
+ build:
+ name: Verify
+ uses: apache/maven-gh-actions-shared/.github/workflows/maven-verify.yml@v3
+ with:
+ jdk-matrix: '[ "8", "11", "17", "20" ]'
diff --git a/.gitignore b/.gitignore
index e1b7e456d..bc313a1fe 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,6 +7,7 @@ bin/
# Intellij
*.ipr
*.iml
+*.versionsBackup
.idea
out/
.DS_Store
@@ -14,4 +15,8 @@ out/
/dependencies.xml
.java-version
.checkstyle
-
+# This file is being created by Mock Repository Manager
+# during integration tests
+src/it/mrm/repository/_ResourceArtifact-1.0.jar
+/dependency-reduced-pom.xml
+.factorypath
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
deleted file mode 100644
index 3ed6c7e32..000000000
--- a/CONTRIBUTING.md
+++ /dev/null
@@ -1,91 +0,0 @@
-
-Contributing to Apache Maven Dependency Plugin
-======================
-
-You have found a bug or you have an idea for a cool new feature? Contributing
-code is a great way to give something back to the open source community. Before
-you dig right into the code, there are a few guidelines that we need
-contributors to follow so that we can have a chance of keeping on top of
-things.
-
-Some of the ideas are documented in the [Maven Wiki][maven-wiki]
-which might be interesting to read and for further discussion.
-
-Getting Started
----------------
-
-+ Make sure you have a [JIRA account](https://issues.apache.org/jira/).
-+ Make sure you have a [GitHub account](https://github.com/signup/free).
-+ If you're planning to implement a new feature, it makes sense to discuss your changes
- on the [dev list](https://maven.apache.org/mailing-lists.html) first.
- This way you can make sure you're not wasting your time on something that isn't
- considered to be in Apache Maven's scope.
-+ Submit a ticket for your issue, assuming one does not already exist.
- + Clearly describe the issue, including steps to reproduce when it is a bug.
- + Make sure you fill in the earliest version that you know has the issue.
-+ Fork the repository on GitHub.
-
-Making and Submitting Changes
---------------
-
-We accept Pull Requests via GitHub. The [developer mailing list][dev-ml-list] is the
-main channel of communication for contributors.
-There are some guidelines which will make applying PRs easier for us:
-+ Create a topic branch from where you want to base your work (this is usually the master branch).
- Push your changes to a topic branch in your fork of the repository.
-+ Make commits of logical units.
-+ Respect the original code style: by using the same [codestyle][code-style],
- patches should only highlight the actual difference, not being disturbed by any formatting issues:
- + Only use spaces for indentation.
- + Create minimal diffs - disable on save actions like reformat source code or organize imports.
- If you feel the source code should be reformatted, create a separate PR for this change.
- + Check for unnecessary whitespace with `git diff --check` before committing.
-+ Make sure your commit messages are in the proper format. Your commit message should contain the key of the JIRA issue.
-```
-[MDEP-XXX] - Subject of the JIRA Ticket
- Optional supplemental description.
-```
-+ Make sure you have added the necessary tests (JUnit/IT) for your changes.
-+ Run all the tests with `mvn -Prun-its verify` to assure nothing else was accidentally broken.
-+ Submit a pull request to the repository in the Apache organization.
-+ Update your JIRA ticket and include a link to the pull request in the ticket.
-
-If you plan to contribute on a regular basis, please consider filing a [contributor license agreement][cla].
-
-Making Trivial Changes
-----------------------
-
-For changes of a trivial nature to comments and documentation, it is not always
-necessary to create a new ticket in JIRA. In this case, it is appropriate to
-start the first line of a commit with '(doc)' instead of a ticket number.
-
-Additional Resources
---------------------
-
-+ [Contributing patches](https://maven.apache.org/guides/development/guide-maven-development.html#Creating_and_submitting_a_patch)
-+ [Apache Maven Help JIRA project page](https://issues.apache.org/jira/projects/MDEP/)
-+ [Contributor License Agreement][cla]
-+ [General GitHub documentation](https://help.github.com/)
-+ [GitHub pull request documentation](https://help.github.com/send-pull-requests/)
-+ [Apache Maven Twitter Account](https://twitter.com/ASFMavenProject)
-+ #Maven IRC channel on freenode.org
-
-[dev-ml-list]: https://maven.apache.org/mailing-lists.html
-[code-style]: https://maven.apache.org/developers/conventions/code.html
-[cla]: https://www.apache.org/licenses/#clas
-[maven-wiki]: https://cwiki.apache.org/confluence/display/MAVEN/Index
diff --git a/README.md b/README.md
index e03c234c0..9f143c0fc 100644
--- a/README.md
+++ b/README.md
@@ -14,13 +14,15 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-Contributing to Apache Maven Dependency Plugin
+Contributing to [Apache Maven Dependency Plugin](https://maven.apache.org/plugins/maven-dependency-plugin/)
======================
+[][jira]
[][license]
-[](https://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.apache.maven.plugins%22%20AND%20a%3A%22maven-dependency-plugin%22)
-[][build]
-[][test-results]
+[](https://search.maven.org/artifact/org.apache.maven.plugins/maven-dependency-plugin)
+[](https://github.com/jvm-repo-rebuild/reproducible-central/blob/master/content/org/apache/maven/plugins/maven-dependency-plugin/README.md)
+[][build]
+[][test-results]
You have found a bug or you have an idea for a cool new feature? Contributing
@@ -35,7 +37,7 @@ Getting Started
+ Make sure you have a [JIRA account](https://issues.apache.org/jira/).
+ Make sure you have a [GitHub account](https://github.com/signup/free).
+ If you're planning to implement a new feature, it makes sense to discuss your changes
- on the [dev list](https://maven.apache.org/mailing-lists.html) first.
+ on the [dev list][ml-list] first.
This way you can make sure you're not wasting your time on something that isn't
considered to be in Apache Maven's scope.
+ Submit a ticket for your issue, assuming one does not already exist.
@@ -46,7 +48,7 @@ Getting Started
Making and Submitting Changes
--------------
-We accept Pull Requests via GitHub. The [developer mailing list][dev-ml-list] is the
+We accept Pull Requests via GitHub. The [developer mailing list][ml-list] is the
main channel of communication for contributors.
There are some guidelines which will make applying PRs easier for us:
+ Create a topic branch from where you want to base your work (this is usually the master branch).
@@ -81,17 +83,18 @@ Additional Resources
--------------------
+ [Contributing patches](https://maven.apache.org/guides/development/guide-maven-development.html#Creating_and_submitting_a_patch)
-+ [Apache Maven Dependency JIRA project page](https://issues.apache.org/jira/projects/MDEP/)
++ [Apache Maven Dependency JIRA project page][jira]
+ [Contributor License Agreement][cla]
+ [General GitHub documentation](https://help.github.com/)
-+ [GitHub pull request documentation](https://help.github.com/send-pull-requests/)
++ [GitHub pull request documentation](https://docs.github.com/en/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork)
+ [Apache Maven Twitter Account](https://twitter.com/ASFMavenProject)
+ #Maven IRC channel on freenode.org
+[jira]: https://issues.apache.org/jira/projects/MDEP/
[license]: https://www.apache.org/licenses/LICENSE-2.0
-[dev-ml-list]: https://maven.apache.org/mailing-lists.html
+[ml-list]: https://maven.apache.org/mailing-lists.html
[code-style]: https://maven.apache.org/developers/conventions/code.html
[cla]: https://www.apache.org/licenses/#clas
[maven-wiki]: https://cwiki.apache.org/confluence/display/MAVEN/Index
-[test-results]: https://builds.apache.org/job/maven-box/job/maven-dependency-plugin/job/master/lastCompletedBuild/testReport/
-[build]: https://builds.apache.org/job/maven-box/job/maven-dependency-plugin/job/master/
+[test-results]: https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-dependency-plugin/job/master/lastCompletedBuild/testReport/
+[build]: https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-dependency-plugin/job/master/
diff --git a/pom.xml b/pom.xml
index 759e16c72..58ce5ccbe 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,5 +1,4 @@
-
-
+
-
4.0.0
- maven-pluginsorg.apache.maven.plugins
- 34
- ../../pom/maven/maven-plugins/pom.xml
+ maven-plugins
+ 39
+ maven-dependency-plugin
- 3.1.2
+ 3.6.0maven-pluginApache Maven Dependency PluginProvides utility goals to work with dependencies like copying, unpacking, analyzing, resolving and many more.
-
- ${mavenVersion}
-
-
-
- scm:git:https://gitbox.apache.org/repos/asf/maven-dependency-plugin.git
- scm:git:https://gitbox.apache.org/repos/asf/maven-dependency-plugin.git
- https://github.com/apache/maven-dependency-plugin/tree/${project.scm.tag}
- maven-dependency-plugin-3.1.2
-
-
- JIRA
- https://issues.apache.org/jira/browse/MDEP
-
-
- Jenkins
- https://builds.apache.org/job/maven-box/job/maven-dependency-plugin/
-
-
-
- apache.website
- scm:svn:https://svn.apache.org/repos/asf/maven/website/components/${maven.site.path}
-
-
-
Bakito
@@ -88,212 +61,264 @@ under the License.
+
+ ${mavenVersion}
+
+
+
+ scm:git:https://gitbox.apache.org/repos/asf/maven-dependency-plugin.git
+ scm:git:https://gitbox.apache.org/repos/asf/maven-dependency-plugin.git
+ maven-dependency-plugin-3.6.0
+ https://github.com/apache/maven-dependency-plugin/tree/${project.scm.tag}
+
+
+ JIRA
+ https://issues.apache.org/jira/browse/MDEP
+
+
+ Jenkins
+ https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-dependency-plugin/
+
+
+
+ apache.website
+ scm:svn:https://svn.apache.org/repos/asf/maven/website/components/${maven.site.path}
+
+
+
- 3.0
- 1.9
- 9.2.28.v20190418
- 2.1
- 7
- 2020-03-07T11:39:12Z
+ 3.2.5
+ 9.4.51.v20230217
+ 3.3.0
+ 1.0.0.v20140518
+ 8
+ 2023-05-19T13:52:51Z
+ 1.7.36
+ 4.7.1
-
-
- org.ow2.asm
- asm
- 7.3.1
-
-
+
+
+
+
+ org.eclipse.sisu
+ org.eclipse.sisu.inject
+ 0.3.0.M1
+
+
+ org.eclipse.sisu
+ org.eclipse.sisu.plexus
+ 0.3.0.M1
+
+
+
+ org.apache.commons
+ commons-text
+ 1.10.0
+
+
-
-
- org.apache.maven
- maven-compat
- ${mavenVersion}
- test
-
-
org.apache.mavenmaven-artifact${mavenVersion}
+ providedorg.apache.mavenmaven-plugin-api${mavenVersion}
+ providedorg.apache.mavenmaven-model${mavenVersion}
+ providedorg.apache.mavenmaven-core${mavenVersion}
+ providedorg.apache.mavenmaven-repository-metadata${mavenVersion}
+ provided
+
+
+ org.apache.maven
+ maven-settings
+ ${mavenVersion}
+ provided
+
+
+ org.apache.maven
+ maven-aether-provider
+ ${mavenVersion}
+ provided
+
+ org.apache.maven.doxia
+ doxia-sink-api
+ 1.11.1
+
+
+ org.codehaus.plexus
+ plexus-container-default
+
+
+ org.apache.maven.reportingmaven-reporting-api
- 3.0
+ 3.1.1org.apache.maven.reportingmaven-reporting-impl
- 3.0.0
+ 3.2.0
- maven-artifact-manager
- org.apache.maven
-
-
- maven-project
- org.apache.maven
-
-
- maven-profile
- org.apache.maven
-
-
- maven-plugin-registry
- org.apache.maven
+ org.codehaus.plexus
+ plexus-container-defaultcommons-iocommons-io
- 2.6
-
-
-
-
- org.apache.maven.doxia
- doxia-sink-api
- ${doxiaVersion}
-
-
- org.apache.maven.doxia
- doxia-core
- ${doxiaVersion}
-
-
- org.apache.maven.doxia
- doxia-site-renderer
- ${doxiaVersion}
+ 2.11.0org.codehaus.plexusplexus-archiver
- 4.2.2
+ ${plexus-archiver.version}org.codehaus.plexusplexus-utils
- 3.3.0
+ 3.5.1
- org.apache.maven.shared
- file-management
- 3.0.0
+ org.codehaus.plexus
+ plexus-io
+ 3.4.1
+
+
+ org.codehaus.plexus
+ plexus-i18n
+ 1.0-beta-10
- maven-artifact-manager
- org.apache.maven
+ org.codehaus.plexus
+ plexus-component-api
-
- org.codehaus.plexus
- plexus-io
- 3.2.0
- org.apache.maven.sharedmaven-dependency-analyzer
- 1.11.1
-
-
- maven-project
- org.apache.maven
-
-
+ 1.13.2org.apache.maven.sharedmaven-dependency-tree
- 3.0.1
+ 3.2.1org.apache.maven.sharedmaven-common-artifact-filters
- 3.1.0
+ 3.3.2org.apache.maven.sharedmaven-artifact-transfer
- 0.11.0
+ 0.13.1org.apache.maven.sharedmaven-shared-utils
- 3.2.1
-
-
-
- commons-lang
- commons-lang
- 2.6
+ 3.3.4
- commons-collections
- commons-collections
- 3.2.2
+ org.apache.commons
+ commons-collections4
+ 4.2
-
- classworlds
- classworlds
- 1.1
+ org.apache.commons
+ commons-lang3
+ 3.12.0org.apache.maven.plugin-toolsmaven-plugin-annotations
+ provided
+
+
+
+ org.eclipse.aether
+ aether-api
+ ${resolverVersion}
+ provided
+
+
+ org.eclipse.aether
+ aether-util
+ ${resolverVersion}
+ provided
+
+
+
+ org.sonatype.plexus
+ plexus-build-api
+ 0.0.7
+
+ compile
- junit
- junit
- 4.13
+ org.eclipse.aether
+ aether-connector-basic
+ ${resolverVersion}test
- org.apache.maven.plugin-testing
- maven-plugin-testing-tools
- ${pluginTestingVersion}
+ org.eclipse.aether
+ aether-transport-file
+ ${resolverVersion}
+ test
+
+
+ org.eclipse.aether
+ aether-transport-http
+ ${resolverVersion}test
-
+
+ junit
+ junit
+ 4.13.2
+ test
+
+ org.apache.maven.plugin-testingmaven-plugin-testing-harness${pluginTestingVersion}
@@ -302,28 +327,16 @@ under the License.
org.mockitomockito-core
- 2.28.2
+ 4.11.0test
-
- org.codehaus.plexus
- plexus-interpolation
- 1.26
- test
-
-
-
- org.sonatype.aether
- aether-connector-wagon
- 1.7
- provided
-
+
- org.apache.maven.wagon
- wagon-http-lightweight
- 1.0-beta-6
- provided
+ org.apache.maven
+ maven-compat
+ ${mavenVersion}
+ test
@@ -334,17 +347,22 @@ under the License.
org.eclipse.jetty
- jetty-servlet
+ jetty-util${jettyVersion}testorg.eclipse.jetty
- jetty-webapp
+ jetty-security${jettyVersion}test
-
+
+ org.slf4j
+ slf4j-simple
+ ${slf4j.version}
+ test
+
@@ -364,51 +382,50 @@ under the License.
src/it/projects/tree-multimodule/expected.txtsrc/it/projects/tree-multimodule/module-a/expected.txtsrc/it/projects/tree-multimodule/module-b/expected.txt
- src/it/projects/tree-verbose/expected.txt
+ src/it/projects/tree-verbose-multimodule/expected.txt
+ src/it/projects/tree-verbose-multimodule/module-a/expected.txt
+ src/it/projects/tree-verbose-multimodule/module-b/expected.txt
+ src/it/projects/tree-verbose/expected*.txt
+ src/it/projects/tree-verbose-small/expected.txt
+
+ src/test/resources/unit/verbose-serializer-test/*src/test/resources/unit/get-test/repository/test/test/1.0/test-1.0.jar.sha1src/test/resources/unit/get-test/repository/test/test/1.0/test-1.0.pom.sha1
+
+ src/test/resources/unit/list-test/testListClasses*.txt
+
+ org.apache.maven.plugins
+ maven-checkstyle-plugin
+
+ config/maven_checks_nocodestyle.xml
+
+
-
- org.apache.maven.plugins
- maven-enforcer-plugin
-
-
- enforce-bytecode-version
-
- enforce
-
-
-
-
- ${maven.compiler.target}
-
- module-info
-
-
-
-
-
-
- org.apache.maven.pluginsmaven-surefire-plugin
-
+
-Xmx384m${maven.home}
+
+ org.eclipse.sisu
+ sisu-maven-plugin
+
@@ -420,6 +437,7 @@ under the License.
org.apache.maven.pluginsmaven-invoker-plugin
+ 3.5.1clean
@@ -428,8 +446,6 @@ under the License.
src/it/projectspurge-local-repository-bad-pom/pom.xml
-
- tree-verbose/pom.xml*/pom.xml
@@ -439,57 +455,45 @@ under the License.
src/it/mrm/settings.xml${repository.proxy.url}
+ 3.11.0
+
+
+
+ org.jsoup
+ jsoup
+ 1.16.1
+
+ org.codehaus.mojomrm-maven-plugin
- 1.2.0
-
-
-
- start
- stop
-
-
-
+ 1.5.0repository.proxy.urlsrc/it/mrm/repository
-
+
+ ${project.build.directory}/local-repo
+
+
+
+
+ start
+ stop
+
+
+
-
- reporting
-
-
-
- org.codehaus.mojo
- l10n-maven-plugin
- 1.0-alpha-2
-
-
- de
- pt_BR
- sv
-
-
-
-
-
-
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
deleted file mode 100644
index 065cb8404..000000000
--- a/src/changes/changes.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
- Dependency Maven Plugin
- Brian Fox
-
-
-
-
-
- Initial Release of Plugin
-
- Issue for initial import of plugin
- Add strip version functionality to copyMojo
-
-
-
diff --git a/src/it-harness-poms/copy-dependencies/pom.xml b/src/it-harness-poms/copy-dependencies/pom.xml
index b131e3768..8f470a6b5 100644
--- a/src/it-harness-poms/copy-dependencies/pom.xml
+++ b/src/it-harness-poms/copy-dependencies/pom.xml
@@ -29,7 +29,7 @@ under the License.
junitjunit
- 4.1
+ 4.13.2ant
diff --git a/src/it-harness-poms/copy-dependencies2/pom.xml b/src/it-harness-poms/copy-dependencies2/pom.xml
index 394b0c126..0a9cfb701 100644
--- a/src/it-harness-poms/copy-dependencies2/pom.xml
+++ b/src/it-harness-poms/copy-dependencies2/pom.xml
@@ -29,7 +29,7 @@ under the License.
junitjunit
- 4.1
+ 4.13.2ant
diff --git a/src/it-harness-poms/mdep-27/pom.xml b/src/it-harness-poms/mdep-27/pom.xml
index a6ebe96fa..f88524d2f 100644
--- a/src/it-harness-poms/mdep-27/pom.xml
+++ b/src/it-harness-poms/mdep-27/pom.xml
@@ -29,12 +29,12 @@ under the License.
junitjunit
- 4.1
+ 4.13.2antant
- 1.6
+ 1.7.0
diff --git a/src/it-harness-poms/mdep-61/pom.xml b/src/it-harness-poms/mdep-61/pom.xml
index 863259ecd..65ad81d59 100644
--- a/src/it-harness-poms/mdep-61/pom.xml
+++ b/src/it-harness-poms/mdep-61/pom.xml
@@ -29,7 +29,7 @@ under the License.
junitjunit
- 4.1
+ 4.13.2test
diff --git a/src/it-harness-poms/mdep-66/pom.xml b/src/it-harness-poms/mdep-66/pom.xml
index c6ac950ec..d1fecc628 100644
--- a/src/it-harness-poms/mdep-66/pom.xml
+++ b/src/it-harness-poms/mdep-66/pom.xml
@@ -29,7 +29,7 @@ under the License.
junitjunit
- 4.1
+ 4.13.2test
diff --git a/src/it-harness-poms/mdep-67/pom.xml b/src/it-harness-poms/mdep-67/pom.xml
index 96512b1a1..485a3006d 100644
--- a/src/it-harness-poms/mdep-67/pom.xml
+++ b/src/it-harness-poms/mdep-67/pom.xml
@@ -29,7 +29,7 @@ under the License.
junitjunit
- 4.1
+ 4.13.2
diff --git a/src/it/projects/analyze-dep-mgt/pom.xml b/src/it/projects/analyze-dep-mgt/pom.xml
index 386a8787d..21cb3e5e0 100644
--- a/src/it/projects/analyze-dep-mgt/pom.xml
+++ b/src/it/projects/analyze-dep-mgt/pom.xml
@@ -41,7 +41,7 @@
junitjunit
- 3.8.2
+ 4.13.2
diff --git a/src/it/projects/analyze-ignore-all-non-test-scope-dependency/invoker.properties b/src/it/projects/analyze-ignore-all-non-test-scope-dependency/invoker.properties
new file mode 100644
index 000000000..e60283028
--- /dev/null
+++ b/src/it/projects/analyze-ignore-all-non-test-scope-dependency/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = clean ${project.groupId}:${project.artifactId}:${project.version}:analyze
diff --git a/src/it/projects/analyze-ignore-all-non-test-scope-dependency/pom.xml b/src/it/projects/analyze-ignore-all-non-test-scope-dependency/pom.xml
new file mode 100644
index 000000000..a762b0b69
--- /dev/null
+++ b/src/it/projects/analyze-ignore-all-non-test-scope-dependency/pom.xml
@@ -0,0 +1,61 @@
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.its.dependency
+ test
+ 1.0-SNAPSHOT
+
+ Test
+
+ Test dependency:analyze with ignoreAllNonTestScoped
+
+
+
+ UTF-8
+
+
+
+
+ org.apache.maven
+ maven-settings
+ @mavenVersion@
+
+
+
+
+
+
+
+ maven-dependency-plugin
+
+ true
+ true
+ true
+
+
+
+
+
+
diff --git a/src/it/projects/analyze-ignore-all-non-test-scope-dependency/src/test/java/MainTest.java b/src/it/projects/analyze-ignore-all-non-test-scope-dependency/src/test/java/MainTest.java
new file mode 100644
index 000000000..911d74d75
--- /dev/null
+++ b/src/it/projects/analyze-ignore-all-non-test-scope-dependency/src/test/java/MainTest.java
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.settings.Settings;
+
+public class MainTest
+{
+ public Settings settings = null;
+
+ public void testPass()
+ {
+ }
+}
diff --git a/src/it/projects/analyze-ignore-dependency/pom.xml b/src/it/projects/analyze-ignore-dependency/pom.xml
index bc43ff5cc..c802f08e5 100644
--- a/src/it/projects/analyze-ignore-dependency/pom.xml
+++ b/src/it/projects/analyze-ignore-dependency/pom.xml
@@ -55,6 +55,7 @@
org.apache.maven:maven-projectorg.apache.maven:maven-model
+ org.apache.maven:maven-settings
diff --git a/src/it/projects/analyze-ignore-dependency/src/test/java/MainTest.java b/src/it/projects/analyze-ignore-dependency/src/test/java/MainTest.java
new file mode 100644
index 000000000..911d74d75
--- /dev/null
+++ b/src/it/projects/analyze-ignore-dependency/src/test/java/MainTest.java
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.settings.Settings;
+
+public class MainTest
+{
+ public Settings settings = null;
+
+ public void testPass()
+ {
+ }
+}
diff --git a/src/it/projects/analyze-ignore-non-test-scope-dependency/invoker.properties b/src/it/projects/analyze-ignore-non-test-scope-dependency/invoker.properties
new file mode 100644
index 000000000..e60283028
--- /dev/null
+++ b/src/it/projects/analyze-ignore-non-test-scope-dependency/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = clean ${project.groupId}:${project.artifactId}:${project.version}:analyze
diff --git a/src/it/projects/analyze-ignore-non-test-scope-dependency/pom.xml b/src/it/projects/analyze-ignore-non-test-scope-dependency/pom.xml
new file mode 100644
index 000000000..34cb9fed0
--- /dev/null
+++ b/src/it/projects/analyze-ignore-non-test-scope-dependency/pom.xml
@@ -0,0 +1,63 @@
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.its.dependency
+ test
+ 1.0-SNAPSHOT
+
+ Test
+
+ Test dependency:analyze with ignoredNonTestScopedDependencies
+
+
+
+ UTF-8
+
+
+
+
+ org.apache.maven
+ maven-settings
+ @mavenVersion@
+
+
+
+
+
+
+
+ maven-dependency-plugin
+
+ true
+ true
+
+ org.apache.maven:maven-settings
+
+
+
+
+
+
+
diff --git a/src/it/projects/analyze-ignore-non-test-scope-dependency/src/test/java/MainTest.java b/src/it/projects/analyze-ignore-non-test-scope-dependency/src/test/java/MainTest.java
new file mode 100644
index 000000000..911d74d75
--- /dev/null
+++ b/src/it/projects/analyze-ignore-non-test-scope-dependency/src/test/java/MainTest.java
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.maven.settings.Settings;
+
+public class MainTest
+{
+ public Settings settings = null;
+
+ public void testPass()
+ {
+ }
+}
diff --git a/src/it/projects/analyze-ignore-used-undeclared-dependency/pom.xml b/src/it/projects/analyze-ignore-used-undeclared-dependency/pom.xml
index 55cd3b26b..0fa6d51c6 100644
--- a/src/it/projects/analyze-ignore-used-undeclared-dependency/pom.xml
+++ b/src/it/projects/analyze-ignore-used-undeclared-dependency/pom.xml
@@ -40,7 +40,7 @@
org.apache.mavenmaven-core
- 2.0.6
+ 3.0
diff --git a/src/it/projects/analyze-report/invoker.properties b/src/it/projects/analyze-report/invoker.properties
index 6e4c8f364..050bfcf1b 100644
--- a/src/it/projects/analyze-report/invoker.properties
+++ b/src/it/projects/analyze-report/invoker.properties
@@ -5,9 +5,9 @@
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
-#
+#
# http://www.apache.org/licenses/LICENSE-2.0
-#
+#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -15,7 +15,4 @@
# specific language governing permissions and limitations
# under the License.
-invoker.goals = clean ${project.groupId}:${project.artifactId}:${project.version}:analyze-report
-# don't know why it fails with Maven 2 on some weird java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
-# no time to investigate, Maven 2 is not supported any more
-invoker.maven.version = 3.0+
+invoker.goals = ${project.groupId}:${project.artifactId}:${project.version}:analyze-report
diff --git a/src/it/projects/analyze-report/pom.xml b/src/it/projects/analyze-report/pom.xml
index 161afb63c..a55389717 100644
--- a/src/it/projects/analyze-report/pom.xml
+++ b/src/it/projects/analyze-report/pom.xml
@@ -53,19 +53,4 @@
2.0.6
-
-
-
-
-
- maven-dependency-plugin
-
- true
- true
- true
-
-
-
-
-
diff --git a/src/it/projects/analyze-report/verify.bsh b/src/it/projects/analyze-report/verify.bsh
index 75b57c771..d32f9f902 100644
--- a/src/it/projects/analyze-report/verify.bsh
+++ b/src/it/projects/analyze-report/verify.bsh
@@ -19,7 +19,7 @@
import java.io.*;
-File htmlFile = new File( basedir, "target/dependency-analysis.html" );
+File htmlFile = new File( basedir, "target/site/dependency-analysis.html" );
if ( !htmlFile.isFile() )
{
diff --git a/src/it/projects/analyze-testDependencyWithNonTestScope/invoker.properties b/src/it/projects/analyze-testDependencyWithNonTestScope/invoker.properties
new file mode 100644
index 000000000..050bfcf1b
--- /dev/null
+++ b/src/it/projects/analyze-testDependencyWithNonTestScope/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = ${project.groupId}:${project.artifactId}:${project.version}:analyze-report
diff --git a/src/it/projects/analyze-testDependencyWithNonTestScope/pom.xml b/src/it/projects/analyze-testDependencyWithNonTestScope/pom.xml
new file mode 100644
index 000000000..22c2be078
--- /dev/null
+++ b/src/it/projects/analyze-testDependencyWithNonTestScope/pom.xml
@@ -0,0 +1,75 @@
+
+
+
+
+ 4.0.0
+ org.apache.maven.plugins.dependency.its
+ nonTestScopeTestArtifactsAnalysis
+ 1.0.0-SNAPSHOT
+
+
+ UTF-8
+ 1.7
+
+
+
+
+
+
+ maven-dependency-plugin
+
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+ junit
+ junit
+ 4.13.1
+
+
+ org.assertj
+ assertj-core
+
+ 2.9.1
+ runtime
+
+
+
+ org.jsoup
+ jsoup
+ 1.15.3
+
+
+
+ org.apache.maven
+ maven-project
+ 2.0.6
+
+
+
diff --git a/src/it/projects/analyze/verify.bsh b/src/it/projects/analyze-testDependencyWithNonTestScope/src/main/java/hello/Hello.java
similarity index 79%
rename from src/it/projects/analyze/verify.bsh
rename to src/it/projects/analyze-testDependencyWithNonTestScope/src/main/java/hello/Hello.java
index ab10fcd4d..7b5e10dff 100644
--- a/src/it/projects/analyze/verify.bsh
+++ b/src/it/projects/analyze-testDependencyWithNonTestScope/src/main/java/hello/Hello.java
@@ -1,3 +1,5 @@
+package hello;
+
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
@@ -17,13 +19,6 @@
* under the License.
*/
-import java.io.*;
-
-File classFile = new File( basedir, "target/classes/Main.class" );
-
-if ( !classFile.isFile() )
+public class Hello
{
- throw new Exception( "Build was not forked, class missing " + classFile );
}
-
-return true;
diff --git a/src/it/projects/analyze-testDependencyWithNonTestScope/src/test/java/hello/HelloTest.java b/src/it/projects/analyze-testDependencyWithNonTestScope/src/test/java/hello/HelloTest.java
new file mode 100644
index 000000000..067c1947e
--- /dev/null
+++ b/src/it/projects/analyze-testDependencyWithNonTestScope/src/test/java/hello/HelloTest.java
@@ -0,0 +1,32 @@
+package hello;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+public class HelloTest {
+
+ @Test
+ public void testAdd() {
+ assertEquals( 1 + 1, 2 );
+ }
+
+}
diff --git a/src/it/projects/analyze-testDependencyWithNonTestScope/verify.bsh b/src/it/projects/analyze-testDependencyWithNonTestScope/verify.bsh
new file mode 100644
index 000000000..ba623ba7a
--- /dev/null
+++ b/src/it/projects/analyze-testDependencyWithNonTestScope/verify.bsh
@@ -0,0 +1,63 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.*;
+import org.jsoup.Jsoup;
+import org.jsoup.helper.Validate;
+import org.jsoup.nodes.Document;
+import org.jsoup.nodes.Element;
+import org.jsoup.select.Elements;
+
+File htmlFile = new File( basedir, "target/site/dependency-analysis.html" );
+
+if ( !htmlFile.isFile() )
+{
+ throw new Exception( "Dependency analysis file missing " + htmlFile );
+}
+if ( htmlFile.length() == 0 )
+{
+ throw new Exception( "Dependency analysis file empty " + htmlFile );
+}
+
+Document doc = Jsoup.parse( htmlFile, "UTF-8");
+
+Elements entry = doc.select( "#contentBox > section > section:nth-child(5) > table > tbody > tr.b" );
+
+if( entry.isEmpty() )
+{
+ throw new Exception ( "Can't find table entry under CompileScopedTestDependencies header " + htmlFile);
+}
+else if ( entry.size() != 1 )
+{
+ throw new Exception ( "Table entry under CompileScopedTestDependencies header has " + entry.size() +
+ "rows but only 1 was expected " + htmlFile );
+}
+
+Element groupIdElement = doc.select(
+"#contentBox > section > section:nth-child(5) > table > tbody > tr.b > td:nth-child(1)" ).first();
+
+String groupId = groupIdElement.text();
+
+if ( !groupId.equals( "junit" ) )
+{
+ throw new Exception ( "Table entry under CompileScopedTestDependencies header groupId is not junit. Value is " +
+ groupId + " in " + htmlFile);
+}
+
+return true;
diff --git a/src/it/projects/analyze/verify.groovy b/src/it/projects/analyze/verify.groovy
new file mode 100644
index 000000000..0ff117d26
--- /dev/null
+++ b/src/it/projects/analyze/verify.groovy
@@ -0,0 +1,41 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+File classFile = new File( basedir, "target/classes/Main.class" );
+assert classFile.exists();
+if ( !classFile.isFile() )
+{
+ throw new Exception( "Build was not forked, class missing " + classFile );
+}
+
+File file = new File( basedir, "build.log" );
+assert file.exists();
+
+String buildLog = file.getText( "UTF-8" );
+assert buildLog.contains( '[INFO] Used declared dependencies found:');
+assert buildLog.contains( '[INFO] org.apache.maven:maven-artifact:jar:2.0.6:compile');
+assert buildLog.contains( '[INFO] org.apache.maven:maven-model:jar:2.0.6:compile');
+assert buildLog.contains( '[WARNING] Used undeclared dependencies found:');
+assert buildLog.contains( '[WARNING] org.apache.maven:maven-repository-metadata:jar:2.0.6:compile');
+assert buildLog.contains( '[WARNING] class org.apache.maven.artifact.repository.metadata.Metadata');
+assert buildLog.contains( '[WARNING] Unused declared dependencies found:');
+assert buildLog.contains( '[WARNING] org.apache.maven:maven-project:jar:2.0.6:compile');
+
+
+return true;
diff --git a/src/it/projects/build-classpath-changeparams/invoker.properties b/src/it/projects/build-classpath-changeparams/invoker.properties
new file mode 100644
index 000000000..68eb44ce2
--- /dev/null
+++ b/src/it/projects/build-classpath-changeparams/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = ${project.groupId}:${project.artifactId}:${project.version}:build-classpath
diff --git a/src/it/projects/build-classpath-changeparams/pom.xml b/src/it/projects/build-classpath-changeparams/pom.xml
new file mode 100644
index 000000000..74963ba18
--- /dev/null
+++ b/src/it/projects/build-classpath-changeparams/pom.xml
@@ -0,0 +1,68 @@
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.its.dependency
+ build-classpath-changeparams
+ 1.0-SNAPSHOT
+
+ Test
+
+ Test dependency:build-classpath with changed default parameters
+
+
+
+ UTF-8
+
+
+
+
+ org.apache.maven
+ maven-profile
+ 2.0.6
+
+
+
+ classworlds
+ classworlds
+
+
+
+
+
+
+ org.apache.maven
+ maven-project
+ 2.0.6
+ sources
+
+
+ *
+ *
+
+
+
+
+
+
diff --git a/src/it/projects/build-classpath-changeparams/test.properties b/src/it/projects/build-classpath-changeparams/test.properties
new file mode 100644
index 000000000..a4f45b9d0
--- /dev/null
+++ b/src/it/projects/build-classpath-changeparams/test.properties
@@ -0,0 +1,26 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+mdep.outputFile = target/classpath.txt
+mdep.fileSeparator = /
+mdep.pathSeparator = :
+
+# for test we change default parameters
+mdep.prependGroupId = true
+mdep.stripClassifier = true
+mdep.prefix = PREFIX
+
diff --git a/src/it/projects/build-classpath-changeparams/verify.bsh b/src/it/projects/build-classpath-changeparams/verify.bsh
new file mode 100644
index 000000000..57574e03f
--- /dev/null
+++ b/src/it/projects/build-classpath-changeparams/verify.bsh
@@ -0,0 +1,49 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.*;
+import java.util.*;
+
+import org.codehaus.plexus.util.*;
+
+String classpath = FileUtils.fileRead( new File( basedir, "target/classpath.txt" ) );
+
+classpath = StringUtils.replace( classpath, "PREFIX/", "" );
+
+List actual = Arrays.asList( classpath.split( ":" ) );
+
+List expected = new ArrayList();
+expected.add( "org.apache.maven.maven-profile-2.0.6.jar" );
+expected.add( "org.apache.maven.maven-model-2.0.6.jar" );
+expected.add( "org.codehaus.plexus.plexus-utils-1.4.1.jar" );
+expected.add( "org.codehaus.plexus.plexus-container-default-1.0-alpha-9-stable-1.jar" );
+expected.add( "junit.junit-3.8.1.jar" );
+// dependency with classifier in pom
+expected.add( "org.apache.maven.maven-project-2.0.6.jar" );
+
+System.out.println( "Checking classpath... " );
+System.out.println( "Actual : " + actual );
+System.out.println( "Expected: " + expected );
+
+if ( !actual.equals( expected ) )
+{
+ throw new Exception( "Unexpected classpath" );
+}
+
+return true;
diff --git a/src/it/projects/build-classpath-output-file-and-property/pom.xml b/src/it/projects/build-classpath-output-file-and-property/pom.xml
index 82dee75e7..0b44be25e 100644
--- a/src/it/projects/build-classpath-output-file-and-property/pom.xml
+++ b/src/it/projects/build-classpath-output-file-and-property/pom.xml
@@ -42,7 +42,7 @@
1.0
-
+
@@ -62,7 +62,7 @@
org.apache.maven.pluginsmaven-enforcer-plugin
- 1.4.1
+ 3.3.0enforce-property
diff --git a/src/it/projects/build-classpath/pom.xml b/src/it/projects/build-classpath/pom.xml
index 5047df02e..b89b55d47 100644
--- a/src/it/projects/build-classpath/pom.xml
+++ b/src/it/projects/build-classpath/pom.xml
@@ -24,7 +24,7 @@
4.0.0org.apache.maven.its.dependency
- test
+ build-classpath1.0-SNAPSHOTTest
@@ -49,6 +49,20 @@
+
+
+
+ org.apache.maven
+ maven-project
+ 2.0.6
+ sources
+
+
+ *
+ *
+
+
+
diff --git a/src/it/projects/build-classpath/verify.bsh b/src/it/projects/build-classpath/verify.bsh
index 7b3b234b4..63990b9f8 100644
--- a/src/it/projects/build-classpath/verify.bsh
+++ b/src/it/projects/build-classpath/verify.bsh
@@ -34,6 +34,8 @@ expected.add( "maven-model-2.0.6.jar" );
expected.add( "plexus-utils-1.4.1.jar" );
expected.add( "plexus-container-default-1.0-alpha-9-stable-1.jar" );
expected.add( "junit-3.8.1.jar" );
+// dependency with classifier in pom
+expected.add( "maven-project-2.0.6-sources.jar" );
System.out.println( "Checking classpath... " );
System.out.println( "Actual : " + actual );
diff --git a/src/it/projects/copy-dependencies/pom.xml b/src/it/projects/copy-dependencies/pom.xml
index cff5a89f6..398aeeb27 100644
--- a/src/it/projects/copy-dependencies/pom.xml
+++ b/src/it/projects/copy-dependencies/pom.xml
@@ -101,7 +101,6 @@
true${project.build.directory}/it/copy-dep-test-1
- false
diff --git a/src/it/projects/copy-with-prependGroupId/invoker.properties b/src/it/projects/copy-with-prependGroupId/invoker.properties
new file mode 100644
index 000000000..f50e476fd
--- /dev/null
+++ b/src/it/projects/copy-with-prependGroupId/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = clean process-sources
diff --git a/src/it/projects/copy-with-prependGroupId/pom.xml b/src/it/projects/copy-with-prependGroupId/pom.xml
new file mode 100644
index 000000000..f0303aaae
--- /dev/null
+++ b/src/it/projects/copy-with-prependGroupId/pom.xml
@@ -0,0 +1,65 @@
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.its.dependency
+ copy-with-prependGroupId
+ 1.0-SNAPSHOT
+
+ Test
+
+ Test dependency:copy with changed default value of prependGroupId
+
+
+
+ UTF-8
+
+
+
+
+
+ maven-dependency-plugin
+ @project.version@
+
+
+ test
+
+ copy
+
+
+ true
+
+
+ org.apache.maven
+ maven-model
+ 2.0.6
+
+
+
+
+
+
+
+
+
diff --git a/src/it/projects/copy-with-prependGroupId/verify.bsh b/src/it/projects/copy-with-prependGroupId/verify.bsh
new file mode 100644
index 000000000..8018ef236
--- /dev/null
+++ b/src/it/projects/copy-with-prependGroupId/verify.bsh
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.*;
+
+File libDir = new File( basedir, "target/dependency" );
+
+String[] expectedFiles = {
+ "org.apache.maven.maven-model-2.0.6.jar",
+};
+
+for ( String expectedFile : expectedFiles )
+{
+ File file = new File( libDir, expectedFile );
+ System.out.println( "Checking for existence of " + file );
+ if ( !file.isFile() )
+ {
+ throw new Exception( "Missing file " + file );
+ }
+}
+
+return true;
diff --git a/src/it/projects/dependency-properties/pom.xml b/src/it/projects/dependency-properties/pom.xml
index 7117e51bb..af48e5a55 100644
--- a/src/it/projects/dependency-properties/pom.xml
+++ b/src/it/projects/dependency-properties/pom.xml
@@ -81,7 +81,7 @@
junitjunit
- 4.1
+ 4.13.2
diff --git a/src/it/projects/list-repositories/pom.xml b/src/it/projects/list-repositories/pom.xml
index 5b3be7983..d74bc248d 100644
--- a/src/it/projects/list-repositories/pom.xml
+++ b/src/it/projects/list-repositories/pom.xml
@@ -1,47 +1,54 @@
-
-
-
-
- 4.0.0
-
- org.apache.maven.its.dependency
- test
- 1.0-SNAPSHOT
-
- Test
-
- Test dependency:list-repositories
-
-
-
- UTF-8
-
-
-
-
- org.apache.maven
- maven-project
- 2.0.6
-
-
-
-
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.its.dependency
+ test
+ 1.0-SNAPSHOT
+
+ Test
+
+ Test dependency:list-repositories
+
+
+
+ UTF-8
+
+
+
+
+ fake-remote-repository
+ http://localhost:2345
+
+
+
+
+
+ org.apache.maven
+ maven-core
+ 3.2.5
+
+
+
+
\ No newline at end of file
diff --git a/src/it/projects/list-repositories/verify.groovy b/src/it/projects/list-repositories/verify.groovy
new file mode 100644
index 000000000..be64953d9
--- /dev/null
+++ b/src/it/projects/list-repositories/verify.groovy
@@ -0,0 +1,28 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+File file = new File( basedir, "build.log" );
+assert file.exists();
+
+String buildLog = file.getText( "UTF-8" );
+assert buildLog.contains( 'Project remote repositories used by this build:');
+assert buildLog.contains( '* fake-remote-repository (http://localhost:2345, default, releases+snapshots)');
+assert buildLog.contains( '* sonatype-nexus-snapshots (https://oss.sonatype.org/content/repositories/snapshots, default, snapshots) mirrored by mrm-maven-plugin');
+assert buildLog.contains( '* central (https://repo.maven.apache.org/maven2, default, releases) mirrored by mrm-maven-plugin');
+
diff --git a/src/it/projects/mdep-439-analyze-java8/pom.xml b/src/it/projects/mdep-439-analyze-java8/pom.xml
index 27ce72494..f7e34ebf7 100644
--- a/src/it/projects/mdep-439-analyze-java8/pom.xml
+++ b/src/it/projects/mdep-439-analyze-java8/pom.xml
@@ -23,7 +23,7 @@ under the License.
4.0.0
-
+
org.sugis.mavendep-analyze-java8dep-analyze-java8
@@ -56,7 +56,7 @@ under the License.
org.apache.maven.pluginsmaven-compiler-plugin
- 3.1
+ @compilerPluginVersion@1.81.8
diff --git a/src/it/projects/mdep-599-analyze-java9/pom.xml b/src/it/projects/mdep-599-analyze-java9/pom.xml
index 252dea60d..9a8b66574 100644
--- a/src/it/projects/mdep-599-analyze-java9/pom.xml
+++ b/src/it/projects/mdep-599-analyze-java9/pom.xml
@@ -37,7 +37,7 @@
org.apache.maven.pluginsmaven-compiler-plugin
- 3.7.0
+ @compilerPluginVersion@
@@ -47,7 +47,7 @@
junitjunit
- 4.12
+ 4.13.1test
diff --git a/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/invoker.properties b/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/invoker.properties
new file mode 100644
index 000000000..210b607bc
--- /dev/null
+++ b/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/invoker.properties
@@ -0,0 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.buildResult = failure
+invoker.goals = clean ${project.groupId}:${project.artifactId}:${project.version}:analyze
diff --git a/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/pom.xml b/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/pom.xml
new file mode 100644
index 000000000..16eae6740
--- /dev/null
+++ b/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/pom.xml
@@ -0,0 +1,55 @@
+
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.plugins.dependency
+ mdep-602-log-on-error-level-when-failOnWarning
+ 1.0.0-SNAPSHOT
+
+ Test that dependency:analyze logs dependency warnings as errors when failOnWarning is set to true
+
+
+ UTF-8
+
+
+
+
+ org.apache.maven
+ maven-project
+ 2.0.6
+
+
+
+
+
+
+
+ maven-dependency-plugin
+
+ true
+
+
+
+
+
+
diff --git a/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/src/main/java/Main.java b/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/src/main/java/Main.java
new file mode 100644
index 000000000..293e02c1c
--- /dev/null
+++ b/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/src/main/java/Main.java
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+public class Main
+{
+}
diff --git a/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/verify.groovy b/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/verify.groovy
new file mode 100644
index 000000000..e3ff35309
--- /dev/null
+++ b/src/it/projects/mdep-602-log-on-error-level-when-failOnWarning/verify.groovy
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+File file = new File( basedir, "build.log" );
+assert file.exists();
+
+String buildLog = file.getText( "UTF-8" );
+assert buildLog.contains( '[ERROR] Unused declared dependencies found:');
+assert buildLog.contains( '[ERROR] org.apache.maven:maven-project:jar:2.0.6:compile' );
+
+return true;
diff --git a/src/it/projects/mdep-663_analyze_unsupported_version/pom.xml b/src/it/projects/mdep-663_analyze_unsupported_version/pom.xml
index bc6002aa9..11d31c278 100644
--- a/src/it/projects/mdep-663_analyze_unsupported_version/pom.xml
+++ b/src/it/projects/mdep-663_analyze_unsupported_version/pom.xml
@@ -28,7 +28,6 @@
UTF-8
-
diff --git a/src/it/projects/mdep-714-analyze-ignore-unused-runtime/invoker.properties b/src/it/projects/mdep-714-analyze-ignore-unused-runtime/invoker.properties
new file mode 100644
index 000000000..e60283028
--- /dev/null
+++ b/src/it/projects/mdep-714-analyze-ignore-unused-runtime/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = clean ${project.groupId}:${project.artifactId}:${project.version}:analyze
diff --git a/src/it/projects/mdep-714-analyze-ignore-unused-runtime/pom.xml b/src/it/projects/mdep-714-analyze-ignore-unused-runtime/pom.xml
new file mode 100644
index 000000000..15afd8dc2
--- /dev/null
+++ b/src/it/projects/mdep-714-analyze-ignore-unused-runtime/pom.xml
@@ -0,0 +1,62 @@
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.its.dependency
+ test
+ 1.0-SNAPSHOT
+
+ Test
+
+ Test dependency:analyze with ignoreUnusedRuntime
+
+
+
+ UTF-8
+
+
+
+
+ org.apache.maven
+ maven-project
+ 2.0.6
+ runtime
+
+
+
+
+
+
+
+ maven-dependency-plugin
+
+ true
+ true
+ true
+
+
+
+
+
+
diff --git a/src/it/projects/mdep-714-analyze-ignore-unused-runtime/src/main/java/Main.java b/src/it/projects/mdep-714-analyze-ignore-unused-runtime/src/main/java/Main.java
new file mode 100644
index 000000000..293e02c1c
--- /dev/null
+++ b/src/it/projects/mdep-714-analyze-ignore-unused-runtime/src/main/java/Main.java
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+public class Main
+{
+}
diff --git a/src/it/projects/mdep-739-go-offline-respect-classifiers/invoker.properties b/src/it/projects/mdep-739-go-offline-respect-classifiers/invoker.properties
new file mode 100644
index 000000000..e59612193
--- /dev/null
+++ b/src/it/projects/mdep-739-go-offline-respect-classifiers/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = ${project.groupId}:${project.artifactId}:${project.version}:go-offline
diff --git a/src/it/projects/mdep-739-go-offline-respect-classifiers/pom.xml b/src/it/projects/mdep-739-go-offline-respect-classifiers/pom.xml
new file mode 100644
index 000000000..5c27c42c8
--- /dev/null
+++ b/src/it/projects/mdep-739-go-offline-respect-classifiers/pom.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+ 4.0.0
+ org.apache.maven.plugins.dependency
+ mdep-739-go-offline-respect-classifiers
+ 1.0.0-SNAPSHOT
+ Test that dependency:go-offline respects classifiers on artifacts
+
+
+ org.springframework.cloud
+ spring-cloud-stream
+ test
+ test-jar
+ test-binder
+ 3.1.2
+
+
+
diff --git a/src/it/projects/mdep-739-go-offline-respect-classifiers/verify.groovy b/src/it/projects/mdep-739-go-offline-respect-classifiers/verify.groovy
new file mode 100644
index 000000000..fcc7dc004
--- /dev/null
+++ b/src/it/projects/mdep-739-go-offline-respect-classifiers/verify.groovy
@@ -0,0 +1,26 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+File file = new File( basedir, "build.log" );
+assert file.exists();
+
+String buildLog = file.getText( "UTF-8" );
+assert buildLog.contains( 'Resolved dependency: spring-cloud-stream-3.1.2-test-binder.jar' );
+
+return true;
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-custom/ear/pom.xml b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/ear/pom.xml
new file mode 100644
index 000000000..62aa70475
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/ear/pom.xml
@@ -0,0 +1,42 @@
+
+
+
+
+ 4.0.0
+
+
+ org.apache.maven.its.dependency
+ mdep-752-analyze-ignored-packaging-custom
+ 1.0-SNAPSHOT
+
+
+ mdep-752-ear
+ ear
+
+
+
+ org.apache.maven.its.dependency
+ mdep-752-ejb
+ 1.0-SNAPSHOT
+
+
+
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-custom/ejb/pom.xml b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/ejb/pom.xml
new file mode 100644
index 000000000..d4527d80f
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/ejb/pom.xml
@@ -0,0 +1,35 @@
+
+
+
+
+ 4.0.0
+
+
+ org.apache.maven.its.dependency
+ mdep-752-analyze-ignored-packaging-custom
+ 1.0-SNAPSHOT
+
+
+ mdep-752-ejb
+ ejb
+
+
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-custom/ejb/src/main/java/Main.java b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/ejb/src/main/java/Main.java
new file mode 100644
index 000000000..5e405ff18
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/ejb/src/main/java/Main.java
@@ -0,0 +1,23 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+
+public class Main
+{
+}
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-custom/invoker.properties b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/invoker.properties
new file mode 100644
index 000000000..0eca1be80
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = ${project.groupId}:${project.artifactId}:${project.version}:analyze
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-custom/pom.xml b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/pom.xml
new file mode 100644
index 000000000..8fa4df173
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/pom.xml
@@ -0,0 +1,62 @@
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.its.dependency
+ mdep-752-analyze-ignored-packaging-custom
+ 1.0-SNAPSHOT
+ pom
+
+
+ Test dependency:analyze with custom ignored packaging
+
+
+
+ UTF-8
+
+
+
+ ear
+ ejb
+
+
+
+
+
+
+ maven-dependency-plugin
+
+ true
+
+ pom
+ ear
+ ejb
+
+
+
+
+
+
+
+
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-custom/verify.groovy b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/verify.groovy
new file mode 100644
index 000000000..392d161a7
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-custom/verify.groovy
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+File file = new File( basedir, "build.log" );
+assert file.exists();
+
+String buildLog = file.getText( "UTF-8" );
+// custom configuration for ignoredPackagings should be applied to Mojo
+assert buildLog.contains( 'ignoredPackagings = [pom, ear, ejb]' );
+assert buildLog.contains( '[INFO] Skipping pom project' );
+assert buildLog.contains( '[INFO] Skipping ear project' );
+assert buildLog.contains( '[INFO] Skipping ejb project' );
+
+return true;
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/ear/pom.xml b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/ear/pom.xml
new file mode 100644
index 000000000..ea806426f
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/ear/pom.xml
@@ -0,0 +1,42 @@
+
+
+
+
+ 4.0.0
+
+
+ org.apache.maven.its.dependency
+ mdep-752-analyze-ignored-packaging-defaults
+ 1.0-SNAPSHOT
+
+
+ mdep-752-ear
+ ear
+
+
+
+ org.apache.maven.its.dependency
+ mdep-752-ejb
+ 1.0-SNAPSHOT
+
+
+
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/ejb/pom.xml b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/ejb/pom.xml
new file mode 100644
index 000000000..546cbba42
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/ejb/pom.xml
@@ -0,0 +1,35 @@
+
+
+
+
+ 4.0.0
+
+
+ org.apache.maven.its.dependency
+ mdep-752-analyze-ignored-packaging-defaults
+ 1.0-SNAPSHOT
+
+
+ mdep-752-ejb
+ ejb
+
+
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/ejb/src/main/java/Main.java b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/ejb/src/main/java/Main.java
new file mode 100644
index 000000000..5e405ff18
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/ejb/src/main/java/Main.java
@@ -0,0 +1,23 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+
+public class Main
+{
+}
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/invoker.properties b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/invoker.properties
new file mode 100644
index 000000000..0eca1be80
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = ${project.groupId}:${project.artifactId}:${project.version}:analyze
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/pom.xml b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/pom.xml
new file mode 100644
index 000000000..c11b3889a
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/pom.xml
@@ -0,0 +1,44 @@
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.its.dependency
+ mdep-752-analyze-ignored-packaging-defaults
+ 1.0-SNAPSHOT
+ pom
+
+
+ Test dependency:analyze with default ignored packaging
+
+
+
+ UTF-8
+
+
+
+ ear
+ ejb
+
+
+
diff --git a/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/verify.groovy b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/verify.groovy
new file mode 100644
index 000000000..2de46b262
--- /dev/null
+++ b/src/it/projects/mdep-752-analyze-ignored-packaging-defaults/verify.groovy
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+File file = new File( basedir, "build.log" );
+assert file.exists();
+
+String buildLog = file.getText( "UTF-8" );
+assert buildLog.contains( '[INFO] Skipping pom project' );
+assert buildLog.contains( '[INFO] Skipping ear project' );
+
+return true;
diff --git a/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/invoker.properties b/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/invoker.properties
new file mode 100644
index 000000000..342590243
--- /dev/null
+++ b/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = clean package ${project.groupId}:${project.artifactId}:${project.version}:analyze-only -Dverbose
diff --git a/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/pom.xml b/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/pom.xml
new file mode 100644
index 000000000..c32e272d4
--- /dev/null
+++ b/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/pom.xml
@@ -0,0 +1,53 @@
+
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.shared.dependency-analyzer.tests
+ usedUndeclaredReference
+ 1.0
+ jar
+
+
+
+ net.java.dev.msv
+ xsdlib
+ 2022.7
+
+
+
+
+
+ maven-compiler-plugin
+ @compilerPluginVersion@
+
+ 8
+ 8
+
+
+
+
+
diff --git a/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/src/main/java/usedUndeclaredReference/Project.java b/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/src/main/java/usedUndeclaredReference/Project.java
new file mode 100644
index 000000000..5432b4056
--- /dev/null
+++ b/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/src/main/java/usedUndeclaredReference/Project.java
@@ -0,0 +1,25 @@
+package usedUndeclaredReference;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+public class Project
+{
+ public static final Class CLASS_REF = org.apache.xmlcommons.Version.class;
+}
diff --git a/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/verify.bsh b/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/verify.bsh
new file mode 100644
index 000000000..b3300d87b
--- /dev/null
+++ b/src/it/projects/mdep-779-analyze-only-verbose-shows-class-names/verify.bsh
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.codehaus.plexus.util.*;
+
+String log = FileUtils.fileRead( new File( basedir, "build.log" ) );
+
+log = StringUtils.unifyLineSeparators(log, "\n");
+
+String expected = "[WARNING] Used undeclared dependencies found:\n" +
+ "[WARNING] xml-apis:xml-apis:jar:1.4.01:compile\n" +
+ "[WARNING] class org.apache.xmlcommons.Version\n" +
+ "[WARNING] Unused declared dependencies found:\n" +
+ "[WARNING] net.java.dev.msv:xsdlib:jar:2022.7:compile";
+
+if ( !log.contains(expected) )
+{
+ throw new Exception( "Expected warning missing" );
+}
+
+return true;
diff --git a/src/it/projects/setup-custom-ear-lifecycle/manager/pom.xml b/src/it/projects/setup-custom-ear-lifecycle/manager/pom.xml
index d3f85640a..41e9fe15b 100644
--- a/src/it/projects/setup-custom-ear-lifecycle/manager/pom.xml
+++ b/src/it/projects/setup-custom-ear-lifecycle/manager/pom.xml
@@ -33,7 +33,7 @@ under the License.
org.codehaus.plexusplexus-archiver
- 2.6.3
+ @plexus-archiver.version@
diff --git a/src/it/projects/setup-custom-ear-lifecycle/plugin/pom.xml b/src/it/projects/setup-custom-ear-lifecycle/plugin/pom.xml
index 8e6bf8fd2..ca1f9b3af 100644
--- a/src/it/projects/setup-custom-ear-lifecycle/plugin/pom.xml
+++ b/src/it/projects/setup-custom-ear-lifecycle/plugin/pom.xml
@@ -41,18 +41,7 @@ under the License.
org.apache.maven.pluginsmaven-plugin-plugin
- 3.1
-
- true
-
-
-
- mojo-descriptor
-
- descriptor
-
-
-
+ 3.7.0
@@ -68,23 +57,25 @@ under the License.
org.apache.mavenmaven-plugin-api
- 2.0.9
+ @mavenVersion@
+ providedorg.apache.maven
- maven-project
- 2.0.9
+ maven-core
+ @mavenVersion@
+ providedorg.codehaus.plexusplexus-archiver
- 2.6.3
+ @plexus-archiver.version@org.apache.maven.plugin-toolsmaven-plugin-annotations
- 3.1
+ 3.7.0provided
diff --git a/src/it/projects/setup-custom-ear-lifecycle/pom.xml b/src/it/projects/setup-custom-ear-lifecycle/pom.xml
index 32b004d6d..b5a3448b4 100644
--- a/src/it/projects/setup-custom-ear-lifecycle/pom.xml
+++ b/src/it/projects/setup-custom-ear-lifecycle/pom.xml
@@ -25,14 +25,14 @@ under the License.
maven-custom-ear1.0pom
-
+
org.apache.maven.pluginsmaven-compiler-plugin
- 2.5.1
+ @compilerPluginVersion@
diff --git a/src/it/projects/sources/pom.xml b/src/it/projects/sources/pom.xml
index 244b6d846..f04fc4d88 100644
--- a/src/it/projects/sources/pom.xml
+++ b/src/it/projects/sources/pom.xml
@@ -40,7 +40,7 @@
org.apache.mavenmaven-project
- 2.0.6
+ 2.0.8
diff --git a/src/it/projects/tree-verbose-multimodule/expected.txt b/src/it/projects/tree-verbose-multimodule/expected.txt
new file mode 100644
index 000000000..d55e3aae7
--- /dev/null
+++ b/src/it/projects/tree-verbose-multimodule/expected.txt
@@ -0,0 +1 @@
+org.apache.maven.its.dependency:tree-multimodule:pom:1.0-SNAPSHOT
diff --git a/src/it/projects/tree-verbose-multimodule/invoker.properties b/src/it/projects/tree-verbose-multimodule/invoker.properties
new file mode 100644
index 000000000..01813bd4b
--- /dev/null
+++ b/src/it/projects/tree-verbose-multimodule/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = ${project.groupId}:${project.artifactId}:${project.version}:tree -Dverbose=true
diff --git a/src/it/projects/tree-verbose-multimodule/module-a/expected.txt b/src/it/projects/tree-verbose-multimodule/module-a/expected.txt
new file mode 100644
index 000000000..706e36b1c
--- /dev/null
+++ b/src/it/projects/tree-verbose-multimodule/module-a/expected.txt
@@ -0,0 +1,30 @@
+org.apache.maven.its.dependency:tree-multimodule-module-a:jar:1.0-SNAPSHOT
+\- org.apache.maven:maven-project:jar:2.0.6:compile
+ +- org.apache.maven:maven-settings:jar:2.0.6:compile
+ | +- (org.apache.maven:maven-model:jar:2.0.6:compile - omitted for duplicate)
+ | +- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ | \- (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile - omitted for duplicate)
+ +- org.apache.maven:maven-profile:jar:2.0.6:compile
+ | +- (org.apache.maven:maven-model:jar:2.0.6:compile - omitted for duplicate)
+ | +- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ | \- (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile - omitted for duplicate)
+ +- org.apache.maven:maven-model:jar:2.0.6:compile
+ | \- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ +- org.apache.maven:maven-artifact-manager:jar:2.0.6:compile
+ | +- org.apache.maven:maven-repository-metadata:jar:2.0.6:compile
+ | | \- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ | +- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ | +- (org.apache.maven:maven-artifact:jar:2.0.6:compile - omitted for duplicate)
+ | +- (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile - omitted for duplicate)
+ | \- org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2:compile
+ | \- (org.codehaus.plexus:plexus-utils:jar:1.0.4:compile - omitted for conflict with 1.4.1)
+ +- org.apache.maven:maven-plugin-registry:jar:2.0.6:compile
+ | +- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ | \- (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile - omitted for duplicate)
+ +- org.codehaus.plexus:plexus-utils:jar:1.4.1:compile
+ +- org.apache.maven:maven-artifact:jar:2.0.6:compile
+ | \- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ \- org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile
+ +- junit:junit:jar:3.8.1:compile
+ +- (org.codehaus.plexus:plexus-utils:jar:1.0.4:compile - omitted for conflict with 1.4.1)
+ \- classworlds:classworlds:jar:1.1-alpha-2:compile
diff --git a/src/it/projects/tree-verbose-multimodule/module-a/pom.xml b/src/it/projects/tree-verbose-multimodule/module-a/pom.xml
new file mode 100644
index 000000000..7c6fe3c1d
--- /dev/null
+++ b/src/it/projects/tree-verbose-multimodule/module-a/pom.xml
@@ -0,0 +1,48 @@
+
+
+
+
+ 4.0.0
+
+
+ org.apache.maven.its.dependency
+ tree-multimodule
+ 1.0-SNAPSHOT
+
+
+ MultimoduleTest Module A
+
+ tree-multimodule-module-a
+
+
+ UTF-8
+
+
+
+
+ org.apache.maven
+ maven-project
+ 2.0.6
+
+
+
+
diff --git a/src/it/projects/tree-verbose-multimodule/module-b/expected.txt b/src/it/projects/tree-verbose-multimodule/module-b/expected.txt
new file mode 100644
index 000000000..e99b46f5f
--- /dev/null
+++ b/src/it/projects/tree-verbose-multimodule/module-b/expected.txt
@@ -0,0 +1,31 @@
+org.apache.maven.its.dependency:tree-multimodule-module-b:jar:1.0-SNAPSHOT
+\- org.apache.maven.its.dependency:tree-multimodule-module-a:jar:1.0-SNAPSHOT:compile
+ \- org.apache.maven:maven-project:jar:2.0.6:compile
+ +- org.apache.maven:maven-settings:jar:2.0.6:compile
+ | +- (org.apache.maven:maven-model:jar:2.0.6:compile - omitted for duplicate)
+ | +- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ | \- (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile - omitted for duplicate)
+ +- org.apache.maven:maven-profile:jar:2.0.6:compile
+ | +- (org.apache.maven:maven-model:jar:2.0.6:compile - omitted for duplicate)
+ | +- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ | \- (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile - omitted for duplicate)
+ +- org.apache.maven:maven-model:jar:2.0.6:compile
+ | \- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ +- org.apache.maven:maven-artifact-manager:jar:2.0.6:compile
+ | +- org.apache.maven:maven-repository-metadata:jar:2.0.6:compile
+ | | \- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ | +- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ | +- (org.apache.maven:maven-artifact:jar:2.0.6:compile - omitted for duplicate)
+ | +- (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile - omitted for duplicate)
+ | \- org.apache.maven.wagon:wagon-provider-api:jar:1.0-beta-2:compile
+ | \- (org.codehaus.plexus:plexus-utils:jar:1.0.4:compile - omitted for conflict with 1.4.1)
+ +- org.apache.maven:maven-plugin-registry:jar:2.0.6:compile
+ | +- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ | \- (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile - omitted for duplicate)
+ +- org.codehaus.plexus:plexus-utils:jar:1.4.1:compile
+ +- org.apache.maven:maven-artifact:jar:2.0.6:compile
+ | \- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
+ \- org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile
+ +- junit:junit:jar:3.8.1:compile
+ +- (org.codehaus.plexus:plexus-utils:jar:1.0.4:compile - omitted for conflict with 1.4.1)
+ \- classworlds:classworlds:jar:1.1-alpha-2:compile
diff --git a/src/it/projects/tree-verbose-multimodule/module-b/pom.xml b/src/it/projects/tree-verbose-multimodule/module-b/pom.xml
new file mode 100644
index 000000000..bffea42af
--- /dev/null
+++ b/src/it/projects/tree-verbose-multimodule/module-b/pom.xml
@@ -0,0 +1,48 @@
+
+
+
+
+ 4.0.0
+
+
+ org.apache.maven.its.dependency
+ tree-multimodule
+ 1.0-SNAPSHOT
+
+
+ MultimoduleTest Module B
+
+ tree-multimodule-module-b
+
+
+ UTF-8
+
+
+
+
+ org.apache.maven.its.dependency
+ tree-multimodule-module-a
+ ${project.version}
+
+
+
+
diff --git a/src/it/projects/tree-verbose-multimodule/pom.xml b/src/it/projects/tree-verbose-multimodule/pom.xml
new file mode 100644
index 000000000..062e10d43
--- /dev/null
+++ b/src/it/projects/tree-verbose-multimodule/pom.xml
@@ -0,0 +1,45 @@
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.its.dependency
+ tree-multimodule
+ 1.0-SNAPSHOT
+ pom
+
+ MultimoduleTest
+
+ Test dependency:tree on multimodule project
+
+
+
+ UTF-8
+
+
+
+ module-a
+ module-b
+
+
+
diff --git a/src/it/projects/tree-verbose-multimodule/test.properties b/src/it/projects/tree-verbose-multimodule/test.properties
new file mode 100644
index 000000000..2a312e22e
--- /dev/null
+++ b/src/it/projects/tree-verbose-multimodule/test.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+outputFile = target/tree.txt
diff --git a/src/it/projects/tree-verbose-multimodule/verify.bsh b/src/it/projects/tree-verbose-multimodule/verify.bsh
new file mode 100644
index 000000000..fcbece716
--- /dev/null
+++ b/src/it/projects/tree-verbose-multimodule/verify.bsh
@@ -0,0 +1,57 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.*;
+
+import org.codehaus.plexus.util.*;
+
+String actual = FileUtils.fileRead( new File( basedir, "target/tree.txt" ) );
+String expected = FileUtils.fileRead( new File( basedir, "expected.txt" ) );
+
+actual = actual.replaceAll( "[\n\r]+", "\n" );
+expected = expected.replaceAll( "[\n\r]+", "\n" );
+
+if ( !actual.equals( expected ) )
+{
+ throw new Exception( "Unexpected root dependency tree" );
+}
+
+actual = FileUtils.fileRead( new File( basedir, "module-a/target/tree.txt" ) );
+expected = FileUtils.fileRead( new File( basedir, "module-a/expected.txt" ) );
+
+actual = actual.replaceAll( "[\n\r]+", "\n" );
+expected = expected.replaceAll( "[\n\r]+", "\n" );
+
+if ( !actual.equals( expected ) )
+{
+ throw new Exception( "Unexpected module-a dependency tree" );
+}
+
+actual = FileUtils.fileRead( new File( basedir, "module-b/target/tree.txt" ) );
+expected = FileUtils.fileRead( new File( basedir, "module-b/expected.txt" ) );
+
+actual = actual.replaceAll( "[\n\r]+", "\n" );
+expected = expected.replaceAll( "[\n\r]+", "\n" );
+
+if ( !actual.equals( expected ) )
+{
+ throw new Exception( "Unexpected module-b dependency tree" );
+}
+
+return true;
diff --git a/src/it/projects/tree-verbose-small/expected.txt b/src/it/projects/tree-verbose-small/expected.txt
new file mode 100644
index 000000000..611614c15
--- /dev/null
+++ b/src/it/projects/tree-verbose-small/expected.txt
@@ -0,0 +1,4 @@
+org.apache.maven.its.dependency:tree-verbose2:jar:1.0-SNAPSHOT
++- commons-logging:commons-logging:jar:1.2:compile
+\- junit:junit:jar:4.13.2:test
+ \- org.hamcrest:hamcrest-core:jar:1.3:test
diff --git a/src/it/projects/tree-verbose-small/invoker.properties b/src/it/projects/tree-verbose-small/invoker.properties
new file mode 100644
index 000000000..5d9b8c08b
--- /dev/null
+++ b/src/it/projects/tree-verbose-small/invoker.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+invoker.goals = clean dependency:tree
diff --git a/src/it/projects/tree-verbose-small/pom.xml b/src/it/projects/tree-verbose-small/pom.xml
new file mode 100644
index 000000000..104879397
--- /dev/null
+++ b/src/it/projects/tree-verbose-small/pom.xml
@@ -0,0 +1,68 @@
+
+
+
+
+ 4.0.0
+
+ org.apache.maven.its.dependency
+ tree-verbose2
+ 1.0-SNAPSHOT
+
+ VerboseTest2
+
+ Test verbose dependency:tree with current dependency-plugin Maven version.
+
+
+
+ UTF-8
+
+
+
+
+ commons-logging
+ commons-logging
+ 1.2
+
+
+ junit
+ junit
+ 4.13.2
+ test
+
+
+
+
+
+
+
+ @project.groupId@
+ @project.artifactId@
+ @project.version@
+
+ target/tree.txt
+ true
+
+
+
+
+
+
diff --git a/src/it/projects/tree-verbose-small/verify.bsh b/src/it/projects/tree-verbose-small/verify.bsh
new file mode 100644
index 000000000..cf0ab8f67
--- /dev/null
+++ b/src/it/projects/tree-verbose-small/verify.bsh
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.*;
+import org.codehaus.plexus.util.*;
+
+String actual = FileUtils.fileRead( new File( basedir, "target/tree.txt" ) );
+String expected = FileUtils.fileRead( new File( basedir, "expected.txt" ) );
+
+actual = actual.replaceAll( "[\n\r]+", "\n" );
+expected = expected.replaceAll( "[\n\r]+", "\n" );
+
+if ( !actual.equals( expected ) )
+{
+ throw new Exception( "Unexpected dependency tree." + System.lineSeparator() + "Expected:" + System.lineSeparator()
+ + expected + System.lineSeparator() + "Actual:" + System.lineSeparator() + actual );
+}
+
+return true;
diff --git a/src/it/projects/tree-verbose/expected.txt b/src/it/projects/tree-verbose/expected.txt
index 391445770..c272b0044 100644
--- a/src/it/projects/tree-verbose/expected.txt
+++ b/src/it/projects/tree-verbose/expected.txt
@@ -1,11 +1,11 @@
org.apache.maven.its.dependency:tree-verbose:jar:1.0-SNAPSHOT
+- org.apache.maven:maven-project:jar:2.0.6:compile
| +- org.apache.maven:maven-settings:jar:2.0.6:compile
-| | +- (org.apache.maven:maven-model:jar:2.0.5:test - version managed from 2.0.6; scope managed from compile; omitted for duplicate)
+| | +- (org.apache.maven:maven-model:jar:2.0.5:test - version managed from 2.0.6; scope managed from compile; omitted for conflict with 2.0.7)
| | +- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
| | \- (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile - omitted for duplicate)
| +- (org.apache.maven:maven-profile:jar:2.0.6:compile - omitted for conflict with 2.0.4)
-| +- (org.apache.maven:maven-model:jar:2.0.5:test - version managed from 2.0.4; scope managed from compile; omitted for conflict with 2.0.7)
+| +- (org.apache.maven:maven-model:jar:2.0.5:test - version managed from 2.0.6; scope managed from compile; omitted for conflict with 2.0.7)
| +- org.apache.maven:maven-artifact-manager:jar:2.0.6:compile
| | +- org.apache.maven:maven-repository-metadata:jar:2.0.6:compile
| | | \- (org.codehaus.plexus:plexus-utils:jar:1.4.1:compile - omitted for duplicate)
@@ -22,7 +22,7 @@ org.apache.maven.its.dependency:tree-verbose:jar:1.0-SNAPSHOT
| +- (org.codehaus.plexus:plexus-utils:jar:1.0.4:compile - omitted for conflict with 1.4.1)
| \- classworlds:classworlds:jar:1.1-alpha-2:compile
+- org.apache.maven:maven-profile:jar:2.0.4:test (scope not updated to compile)
-| +- (org.apache.maven:maven-model:jar:2.0.5:test - version managed from 2.0.4; scope managed from compile; omitted for duplicate)
+| +- (org.apache.maven:maven-model:jar:2.0.5:test - version managed from 2.0.4; scope managed from compile; omitted for conflict with 2.0.7)
| +- (org.codehaus.plexus:plexus-utils:jar:1.1:test - omitted for conflict with 1.4.1)
| \- (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9:test - omitted for conflict with 1.0-alpha-9-stable-1)
+- org.apache.maven:maven-model:jar:2.0.7:runtime
@@ -33,7 +33,6 @@ org.apache.maven.its.dependency:tree-verbose:jar:1.0-SNAPSHOT
| +- (org.apache.xmlgraphics:batik-dom:jar:1.7:compile - omitted for duplicate)
| +- (org.apache.xmlgraphics:batik-ext:jar:1.7:compile - omitted for duplicate)
| +- (org.apache.xmlgraphics:batik-parser:jar:1.7:compile - omitted for duplicate)
- | +- (org.apache.xmlgraphics:batik-anim:jar:1.7:compile - omitted for cycle)
| +- (org.apache.xmlgraphics:batik-svg-dom:jar:1.7:compile - omitted for duplicate)
| +- (org.apache.xmlgraphics:batik-util:jar:1.7:compile - omitted for duplicate)
| +- (xml-apis:xml-apis:jar:1.3.04:compile - omitted for duplicate)
@@ -55,17 +54,23 @@ org.apache.maven.its.dependency:tree-verbose:jar:1.0-SNAPSHOT
| \- (xml-apis:xml-apis-ext:jar:1.3.04:compile - omitted for duplicate)
+- org.apache.xmlgraphics:batik-ext:jar:1.7:compile
| \- (xml-apis:xml-apis:jar:1.3.04:compile - omitted for duplicate)
- +- (org.apache.xmlgraphics:batik-bridge:jar:1.7:compile - omitted for cycle)
+- org.apache.xmlgraphics:batik-gvt:jar:1.7:compile
- | \- (org.apache.xmlgraphics:batik-awt-util:jar:1.7:compile - omitted for duplicate)
+ | +- (org.apache.xmlgraphics:batik-awt-util:jar:1.7:compile - omitted for duplicate)
+ | +- (org.apache.xmlgraphics:batik-util:jar:1.7:compile - omitted for duplicate)
+ | \- (xml-apis:xml-apis:jar:1.3.04:compile - omitted for duplicate)
+- org.apache.xmlgraphics:batik-parser:jar:1.7:compile
| +- (org.apache.xmlgraphics:batik-awt-util:jar:1.7:compile - omitted for duplicate)
| +- (org.apache.xmlgraphics:batik-util:jar:1.7:compile - omitted for duplicate)
| \- (org.apache.xmlgraphics:batik-xml:jar:1.7:compile - omitted for duplicate)
- +- (org.apache.xmlgraphics:batik-bridge:jar:1.7:compile - omitted for cycle)
+- org.apache.xmlgraphics:batik-script:jar:1.7:compile
+ | +- (org.apache.xmlgraphics:batik-dom:jar:1.7:compile - omitted for duplicate)
+ | +- (org.apache.xmlgraphics:batik-ext:jar:1.7:compile - omitted for duplicate)
+ | +- (org.apache.xmlgraphics:batik-svg-dom:jar:1.7:compile - omitted for duplicate)
+ | +- (org.apache.xmlgraphics:batik-util:jar:1.7:compile - omitted for duplicate)
+ | +- org.apache.xmlgraphics:batik-js:jar:1.7:compile
+ | | \- (xml-apis:xml-apis:jar:1.3.04:compile - omitted for duplicate)
+ | \- (xml-apis:xml-apis:jar:1.3.04:compile - omitted for duplicate)
+- org.apache.xmlgraphics:batik-svg-dom:jar:1.7:compile
- | +- (org.apache.xmlgraphics:batik-svg-dom:jar:1.7:compile - omitted for cycle)
| +- (org.apache.xmlgraphics:batik-anim:jar:1.7:compile - omitted for duplicate)
| +- (org.apache.xmlgraphics:batik-awt-util:jar:1.7:compile - omitted for duplicate)
| +- (org.apache.xmlgraphics:batik-css:jar:1.7:compile - omitted for duplicate)
diff --git a/src/it/projects/tree-verbose/pom.xml b/src/it/projects/tree-verbose/pom.xml
index 4514ad487..ef618b9e3 100644
--- a/src/it/projects/tree-verbose/pom.xml
+++ b/src/it/projects/tree-verbose/pom.xml
@@ -29,7 +29,7 @@
VerboseTest
- Test verbose dependency:tree with actual Maven version.
+ Test verbose dependency:tree with current dependency-plugin Maven version.
diff --git a/src/it/projects/tree-verbose/verify.bsh b/src/it/projects/tree-verbose/verify.bsh
index 39689abaf..26391a483 100644
--- a/src/it/projects/tree-verbose/verify.bsh
+++ b/src/it/projects/tree-verbose/verify.bsh
@@ -27,11 +27,10 @@ String expected = FileUtils.fileRead( new File( basedir, "expected.txt" ) );
actual = actual.replaceAll( "[\n\r]+", "\n" );
expected = expected.replaceAll( "[\n\r]+", "\n" );
-System.out.println( "Checking dependency tree..." );
-
if ( !actual.equals( expected ) )
{
- throw new Exception( "Unexpected dependency tree" );
+ throw new Exception( "Unexpected dependency tree." + System.lineSeparator() + "Expected:" + System.lineSeparator()
+ + expected + System.lineSeparator() + "Actual:" + System.lineSeparator() + actual );
}
return true;
diff --git a/src/it/projects/unpack-custom-ear/pom.xml b/src/it/projects/unpack-custom-ear/pom.xml
index cdcc59204..33737a536 100644
--- a/src/it/projects/unpack-custom-ear/pom.xml
+++ b/src/it/projects/unpack-custom-ear/pom.xml
@@ -31,7 +31,7 @@
-
-
-
-
- org.codehaus.plexus.archiver.UnArchiver
- zip
- org.codehaus.plexus.archiver.zip.ZipUnArchiver
- per-lookup
-
-
- org.codehaus.plexus.archiver.UnArchiver
- jar
-
- org.codehaus.plexus.archiver.zip.ZipUnArchiver
- per-lookup
-
-
- org.codehaus.plexus.archiver.UnArchiver
- war
-
- org.codehaus.plexus.archiver.zip.ZipUnArchiver
- per-lookup
-
-
- org.codehaus.plexus.archiver.UnArchiver
- ear
-
- org.codehaus.plexus.archiver.zip.ZipUnArchiver
- per-lookup
-
-
- org.codehaus.plexus.archiver.UnArchiver
- swc
-
- org.codehaus.plexus.archiver.zip.ZipUnArchiver
- per-lookup
-
-
- org.codehaus.plexus.archiver.UnArchiver
- nar
-
- org.codehaus.plexus.archiver.zip.ZipUnArchiver
- per-lookup
-
-
- org.codehaus.plexus.archiver.UnArchiver
- esb
-
- org.codehaus.plexus.archiver.zip.ZipUnArchiver
- per-lookup
-
-
- org.codehaus.plexus.archiver.UnArchiver
- sar
-
- org.codehaus.plexus.archiver.zip.ZipUnArchiver
- per-lookup
-
-
- org.codehaus.plexus.archiver.UnArchiver
- car
-
- org.codehaus.plexus.archiver.zip.ZipUnArchiver
- per-lookup
-
-
- org.codehaus.plexus.archiver.UnArchiver
- par
-
- org.codehaus.plexus.archiver.zip.ZipUnArchiver
- per-lookup
-
-
- org.codehaus.plexus.archiver.UnArchiver
- rar
-
- org.codehaus.plexus.archiver.zip.ZipUnArchiver
- per-lookup
-
-
-
-
diff --git a/src/main/resources/analyze-report.properties b/src/main/resources/analyze-report.properties
index 588f287c8..a2848b5d8 100644
--- a/src/main/resources/analyze-report.properties
+++ b/src/main/resources/analyze-report.properties
@@ -15,11 +15,11 @@
# specific language governing permissions and limitations
# under the License.
-analyze.report.name=Dependency Analysis
-analyze.report.description=Dependency analysis of the project (used declared, used undeclared, unused declared)
-analyze.report.header=Dependencies Report
-analyze.report.mainTitle=Dependency Analysis
-analyze.report.noDependency=None
-analyze.report.UsedDeclaredDependencies=Used and declared dependencies
-analyze.report.UsedUndeclaredDependencies=Used but undeclared dependencies
-analyze.report.UnusedDeclaredDependencies=Unused but declared dependencies
+report.analyze.name=Dependency Analysis
+report.analyze.description=Dependency analysis of the project (used declared, used undeclared, unused declared)
+report.analyze.title=Dependency Analysis
+report.analyze.noDependencyProblems=No dependency problems found
+report.analyze.UsedDeclaredDependencies=Used and Declared Dependencies
+report.analyze.UsedUndeclaredDependencies=Used but Undeclared Dependencies
+report.analyze.UnusedDeclaredDependencies=Unused but Declared Dependencies
+report.analyze.CompileScopeTestOnlyDependencies=Compile Scoped Test Dependencies
diff --git a/src/main/resources/analyze-report_de.properties b/src/main/resources/analyze-report_de.properties
index 9f18ae7af..e284ece71 100644
--- a/src/main/resources/analyze-report_de.properties
+++ b/src/main/resources/analyze-report_de.properties
@@ -15,11 +15,10 @@
# specific language governing permissions and limitations
# under the License.
-analyze.report.name=Abhängigkeitsanalyse
-analyze.report.description=Eine Analysebericht der Projektabhängigkeiten (verwendet und deklariert, verwendet aber nicht deklariert, unverwendet aber deklariert)
-analyze.report.header=Abhängigkeitsanalyse
-analyze.report.mainTitle=Abhängigkeitsanalyse
-analyze.report.noDependency=Keine
-analyze.report.UsedDeclaredDependencies=Verwendete und deklarierte Abhängigkeiten
-analyze.report.UsedUndeclaredDependencies=Verwendete aber undeklarierte Abhängigkeiten
-analyze.report.UnusedDeclaredDependencies=Unverwendete aber deklarierte Abhängigkeiten
+report.analyze.name=Abhängigkeitsanalyse
+report.analyze.description=Eine Analysebericht der Projektabhängigkeiten (verwendet und deklariert, verwendet aber nicht deklariert, unverwendet aber deklariert)
+report.analyze.title=Abhängigkeitsanalyse
+report.analyze.noDependencyProblems=Keine Abhängigkeitsprobleme gefunden
+report.analyze.UsedDeclaredDependencies=Verwendete und deklarierte Abhängigkeiten
+report.analyze.UsedUndeclaredDependencies=Verwendete aber undeklarierte Abhängigkeiten
+report.analyze.UnusedDeclaredDependencies=Unverwendete aber deklarierte Abhängigkeiten
diff --git a/src/main/resources/analyze-report_en.properties b/src/main/resources/analyze-report_en.properties
index e91332326..607b4bf3a 100644
--- a/src/main/resources/analyze-report_en.properties
+++ b/src/main/resources/analyze-report_en.properties
@@ -17,6 +17,6 @@
# NOTE:
# This bundle is intentionally empty because English strings are provided by the base bundle via the parent chain. It
-# must be provided nevertheless such that a request for locale "en" will not errorneously pick up the bundle for the
+# must be provided nevertheless such that a request for locale "en" will not erroneously pick up the bundle for the
# JVM's default locale (which need not be "en"). See the method javadoc about
# ResourceBundle.getBundle(String, Locale, ClassLoader)
diff --git a/src/main/resources/analyze-report_pt_BR.properties b/src/main/resources/analyze-report_pt_BR.properties
index c84642347..324fd0e43 100644
--- a/src/main/resources/analyze-report_pt_BR.properties
+++ b/src/main/resources/analyze-report_pt_BR.properties
@@ -15,11 +15,9 @@
# specific language governing permissions and limitations
# under the License.
-analyze.report.name=An\u00e1lise de Depend\u00eancias
-analyze.report.description=An\u00e1lise de Depend\u00eancias do projeto (usadas e declaradas, usadas e n\u00e3o declaradas, n\u00e3o usadas e declaradas)
-analyze.report.header=Relat\u00f3rio de Depend\u00eancias
-analyze.report.mainTitle=An\u00e1lise de Depend\u00eancias
-analyze.report.noDependency=Nenhuma
-analyze.report.UsedDeclaredDependencies=Depend\u00eancias usadas e declaradas
-analyze.report.UsedUndeclaredDependencies=Depend\u00eancias usadas mas n\u00e3o declaradas
-analyze.report.UnusedDeclaredDependencies=Depend\u00eancias n\u00e3o usadas mas declaradas
+report.analyze.name=An\u00e1lise de Depend\u00eancias
+report.analyze.description=An\u00e1lise de Depend\u00eancias do projeto (usadas e declaradas, usadas e n\u00e3o declaradas, n\u00e3o usadas e declaradas)
+report.analyze.title=An\u00e1lise de Depend\u00eancias
+report.analyze.UsedDeclaredDependencies=Depend\u00eancias usadas e declaradas
+report.analyze.UsedUndeclaredDependencies=Depend\u00eancias usadas mas n\u00e3o declaradas
+report.analyze.UnusedDeclaredDependencies=Depend\u00eancias n\u00e3o usadas mas declaradas
diff --git a/src/main/resources/analyze-report_sv.properties b/src/main/resources/analyze-report_sv.properties
index 81760118b..9f80758a0 100644
--- a/src/main/resources/analyze-report_sv.properties
+++ b/src/main/resources/analyze-report_sv.properties
@@ -15,11 +15,9 @@
# specific language governing permissions and limitations
# under the License.
-analyze.report.name=Beroendeanalys
-analyze.report.description=Beroendeanalys av projektet (anv\u00e4nda deklarerade, anv\u00e4nda odeklarerade, oanv\u00e4nda deklarerade)
-analyze.report.header=Beroenderapport
-analyze.report.mainTitle=Beroendeanalys
-analyze.report.noDependency=Inga
-analyze.report.UsedDeclaredDependencies=Anv\u00e4nda och deklarerade beroenden
-analyze.report.UsedUndeclaredDependencies=Anv\u00e4nda men odeklarerade beroenden
-analyze.report.UnusedDeclaredDependencies=Oanv\u00e4nda men deklarerade beroenden
+report.analyze.name=Beroendeanalys
+report.analyze.description=Beroendeanalys av projektet (anv\u00e4nda deklarerade, anv\u00e4nda odeklarerade, oanv\u00e4nda deklarerade)
+report.analyze.title=Beroendeanalys
+report.analyze.UsedDeclaredDependencies=Anv\u00e4nda och deklarerade beroenden
+report.analyze.UsedUndeclaredDependencies=Anv\u00e4nda men odeklarerade beroenden
+report.analyze.UnusedDeclaredDependencies=Oanv\u00e4nda men deklarerade beroenden
diff --git a/src/site/apt/examples/copying-project-dependencies.apt.vm b/src/site/apt/examples/copying-project-dependencies.apt.vm
index 1f96a1c3c..012dd1ce1 100644
--- a/src/site/apt/examples/copying-project-dependencies.apt.vm
+++ b/src/site/apt/examples/copying-project-dependencies.apt.vm
@@ -63,7 +63,7 @@ Copying project dependencies
* Excluding transitive dependencies
- As mentioned, {{{http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html}transitive dependencies}} are copied by default. However, they
+ As mentioned, {{{https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html}transitive dependencies}} are copied by default. However, they
can also be excluded by setting the <<>> property to
<>.
diff --git a/src/site/apt/examples/exclude-dependencies-from-dependency-analysis.apt.vm b/src/site/apt/examples/exclude-dependencies-from-dependency-analysis.apt.vm
index fa04f0774..706127f14 100644
--- a/src/site/apt/examples/exclude-dependencies-from-dependency-analysis.apt.vm
+++ b/src/site/apt/examples/exclude-dependencies-from-dependency-analysis.apt.vm
@@ -34,10 +34,11 @@ Exclude dependencies from dependency analysis
that contain annotations and the byte code analysis is unable to
determine whether a jar is actually required or not.
- The plugin can then be configured to ignore these dependencies in
- either "declared but unused" or "undeclared but used" case or in
- both simultaneously. See the following POM configuration for an
- example:
+ The plugin can then be configured to ignore dependencies that are
+ "declared but unused", "undeclared but used", and "non-test scoped"
+ in selected list or in all simultaneously.
+
+ See the following POM configuration for an example:
+---+
@@ -57,7 +58,7 @@ Exclude dependencies from dependency analysis
true
-
+
com.google.code.findbugs:jsr305
@@ -71,6 +72,11 @@ Exclude dependencies from dependency analysis
com.google.code.findbugs:annotations
+
+
+
+ com.google.code.findbugs:annotations
+
diff --git a/src/site/apt/examples/resolving-conflicts-using-the-dependency-tree.apt b/src/site/apt/examples/resolving-conflicts-using-the-dependency-tree.apt
deleted file mode 100644
index 6e1c5e501..000000000
--- a/src/site/apt/examples/resolving-conflicts-using-the-dependency-tree.apt
+++ /dev/null
@@ -1,64 +0,0 @@
-~~ Licensed to the Apache Software Foundation (ASF) under one
-~~ or more contributor license agreements. See the NOTICE file
-~~ distributed with this work for additional information
-~~ regarding copyright ownership. The ASF licenses this file
-~~ to you under the Apache License, Version 2.0 (the
-~~ "License"); you may not use this file except in compliance
-~~ with the License. You may obtain a copy of the License at
-~~
-~~ http://www.apache.org/licenses/LICENSE-2.0
-~~
-~~ Unless required by applicable law or agreed to in writing,
-~~ software distributed under the License is distributed on an
-~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-~~ KIND, either express or implied. See the License for the
-~~ specific language governing permissions and limitations
-~~ under the License.
-
- ------
- Resolving conflicts using the dependency tree
- ------
- Mark Hobson
- ------
- 2007-09-01
- ------
-
-Resolving conflicts using the dependency tree
-
- A project's dependency tree can be expanded to display dependency conflicts. For example, to find out why Commons
- Collections 2.0 is being used by the Maven Dependency Plugin, we can execute the following in the project's
- directory:
-
-+---+
-mvn dependency:tree -Dverbose -Dincludes=commons-collections
-+---+
-
- The <<>> flag instructs the dependency tree to display conflicting dependencies that were omitted from the
- resolved dependency tree. In this case, the goal outputs:
-
-+---+
-[INFO] [dependency:tree]
-[INFO] org.apache.maven.plugins:maven-dependency-plugin:maven-plugin:2.0-alpha-5-SNAPSHOT
-[INFO] +- org.apache.maven.reporting:maven-reporting-impl:jar:2.0.4:compile
-[INFO] | \- commons-validator:commons-validator:jar:1.2.0:compile
-[INFO] | \- commons-digester:commons-digester:jar:1.6:compile
-[INFO] | \- (commons-collections:commons-collections:jar:2.1:compile - omitted for conflict with 2.0)
-[INFO] \- org.apache.maven.doxia:doxia-site-renderer:jar:1.0-alpha-8:compile
-[INFO] \- org.codehaus.plexus:plexus-velocity:jar:1.1.3:compile
-[INFO] \- commons-collections:commons-collections:jar:2.0:compile
-+---+
-
- Thus we can see that Commons Collections 2.0 was chosen over 2.1 since it is nearer, and by default Maven resolves
- version conflicts with a nearest-wins strategy.
-
- More specifically, in verbose mode the dependency tree shows dependencies that were omitted for: being a duplicate
- of another; conflicting with another's version and/or scope; and introducing a cycle into the dependency tree.
-
-* Verbose flag support in 3.0+ version
-
- Support for <<>> flag has been removed since maven-dependency-plugin 3.0 ({{{https://issues.apache.org/jira/browse/MDEP-494}MDEP-494}}).
- Extra output can be obtained by using an older version until proper support is reintroduced.
-
-+---+
-mvn org.apache.maven.plugins:maven-dependency-plugin:2.10:tree -Dverbose=true
-+---+
diff --git a/src/site/apt/index.apt.vm b/src/site/apt/index.apt.vm
index 56c75e4d6..4cae408d4 100644
--- a/src/site/apt/index.apt.vm
+++ b/src/site/apt/index.apt.vm
@@ -72,7 +72,10 @@ ${project.name}
*{{{./list-mojo.html}dependency:list}} alias for resolve that lists the dependencies for this project.
- *{{{./list-repositories-mojo.html}dependency:list-repositories}} displays all project dependencies and then lists the repositories used.
+ *{{{./list-classes-mojo.html}dependency:list-classes}} displays the fully package-qualified names of all classes found in a specified artifact.
+
+ *{{{./list-repositories-mojo.html}dependency:list-repositories}} collect all project dependencies and then lists the repositories
+ used by the build and by the transitive dependencies.
*{{{./properties-mojo.html}dependency:properties}} set a property for each project dependency containing the
to the artifact on the file system.
@@ -107,12 +110,12 @@ ${project.name}
already contain the answer to your question as part of an older thread. Hence, it is also worth browsing/searching
the {{{./mailing-lists.html}mail archive}}.
- If you feel like the plugin is missing a feature or has a defect, you can fill a feature request or bug report in our
+ If you feel like the plugin is missing a feature or has a defect, you can file a feature request or bug report in our
{{{./issue-management.html}issue tracker}}. When creating a new issue, please provide a comprehensive description of your
concern. Especially for fixing bugs it is crucial that the developers can reproduce your problem. For this reason,
entire debug logs, POMs or most preferably little demo projects attached to the issue are very much appreciated.
Of course, patches are welcome, too. Contributors can check out the project from our
- {{{./source-repository.html}source repository}} and will find supplementary information in the
+ {{{./scm.html}source repository}} and will find supplementary information in the
{{{http://maven.apache.org/guides/development/guide-helping.html}guide to helping with Maven}}.
* Examples
@@ -148,6 +151,6 @@ ${project.name}
Here is a link that provides more reference regarding dependencies
(i.e. dependency management, transitive dependencies).
- * {{{http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html}Dependency Mechanism}}
+ * {{{https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html}Dependency Mechanism}}
[]
diff --git a/src/site/apt/usage.apt.vm b/src/site/apt/usage.apt.vm
index f14c46f78..a67381c74 100644
--- a/src/site/apt/usage.apt.vm
+++ b/src/site/apt/usage.apt.vm
@@ -425,10 +425,8 @@ mvn dependency:unpack
<<>>
This is the same as the resolve goal except it includes the source
- attachments if they exist. This is useful when you want the source
- attachments downloaded to your local repository and
- you don't want to use the eclipse plugin to do this since the eclipse plugin
- creates/overwrites the eclipse files.
+ attachments if they exist. This is useful when you want to download source
+ attachments to your local repository.
You can also define the <<>> either in the pom or settings
to be a common location for all projects. This allows the system to resolve sources faster for dependencies that don't
@@ -602,7 +600,7 @@ mvn dependency:tree
Optionally, the <<
-
-
-
-
-
- [if-any logo]
-
-
-
- [end]
- The currently selected mirror is
- [preferred].
- If you encounter a problem with this mirror,
- please select another mirror.
- If all mirrors are failing, there are
- backup
- mirrors
- (at the end of the mirrors list) that should be available.
-
+
Otherwise, simply use the ready-made binary artifacts from central repository.
It is essential that you verify the integrity of the downloaded file
+ using the checksum (.sha512 file)
+ or using the signature (.asc file) against the public KEYS used by the Apache Maven developers.
-
-
-
-
This is the current stable version of ${project.name}.