I created a maven plugin that picks up all project dependencies and fills a template file with these artifact informtion: jnlp-maven-plugin. It includes test cases to observe the described behaviour.
Since maven 3.3 the plugin picks up too many artifacts in multi module builds when the dependency is produced by the shade plugin. When I build each module successively the transitive dependencies are correctly provided. Using maven 3.2.5 everything works fine.
The artifacts are retrieved with the following code: AbstractJnlpMojo#73. This fetches the dependencies transitively. Is there a new way to do this since maven 3.3? Or am I doing it wrong?
Assembly plugin on the other hand always fetches the shaded dependencies correctly. But there the dependencies are recursively resolved with it's own algorithm.
To reproduce one has to clone the project from github and install the root module. The files are created in two/target/jnlp. With maven 3.3.X in a multi module build 30 files are created. In older maven versions and in single module installs 20 files are created.