Open
Description
Dmitry Murashenkov opened MSHARED-659 and commented
I'd like to reopen the issue MSHARED-396.
So the case is extremely simple:
- Maven module creates executable jar adding classpath to manifest.
- Then assembly plugin packs executable jar and it's dependencies into archive.
- Then we unpack app and launch it with java -jar myexecutable.jar. All dependencies are placed in same folder and referenced by manifest classpath.
Now suppose we had one library of version 1.0 in runtime scope and 1.5 in test scope. Current behavior is that manifest classpath will have version 1.5 set, but assembly plugin will pack 1.0 cause we only take runtime dependencies. And this may result in ClassNotFoundException in production.
Perhaps it has something to do with MSHARED-4?
Attachments:
- dependency-bug.zip (12.51 kB)
Issue Links:
- MSHARED-396 Created manifest contains versions of test scope
("is a clone of") - MSHARED-4 DefaultDependencyTreeBuilder ignores artifact filter