apache / apache/maven-dependency-plugin

[MDEP-659] dependency:unpack / needs the option of unpacking sub-directory AND ignoring parent folders

Open
#1,093 0 comments 0 reactions 0 assignees View on GitHub
enhancement priority:minor
Dominant language
Java
Stars
175
Forks
196
Avg merge
19h 30m
Merged PRs (30d)
5

Description

**[Jasper Teng](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=jasper.teng)** opened **[MDEP-659](https://issues.apache.org/jira/browse/MDEP-659?redirect=false)** and commented

The current goal is able to unpack specific sub-directory of a zip type artifact by using the "includes" parameter. However, the tree structure of the sub-directory is maintained as well.

For example:

myartifact-version.zip

 

```
myartifact-version
'-folder1
'-...
'-folder2
'-...
```

pom.xml

 

 

```
...

org.apache.maven.plugins
maven-dependency-plugin


unpack-igate-distribution
generate-resources

unpack




com.example
myartifact
${myartifact.version}
zip
true ${project.build.directory}/myartifact
myartifact-*/**




...
```

 

 

Result

 

```
myproject
'-target
'-myartifact
'-myartifact-version
'-folder1
'-...
'-folder2
'-...
```

 

 

However, I want to be able to change the pom.xml, to achieve the following result:

```
myproject
'-target
'-myartifact
'-folder1
'-...
'-folder2
'-...
```

 

 

---

**Affects:** 3.1.1

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the maven-dependency-plugin dependency:unpack goal and the pom.xml configuration using includes and outputDirectory. Trace how the selected myartifact-version.zip subdirectory is mapped into the output tree; done means folder1 and folder2 are placed directly under myartifact without the parent directory.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.