Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Maven Shading Error: Access is Denied

Now, I have already seen this question, however it doesn't appear anything is using my target folder.

What's going on, is when I compile it fails and shows me this error:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-shade-plugin:2.3:shade (default) on project FooProject: Error creating shaded jar: Failed to analyze class dependencies: C:\Users\paul_000\Documents\FooCore\target\classes (Access is denied) -> [Help 1]

I'm not quite sure exactly why this happens, as it doesn't happen on my normal computer.

EDIT: I forgot to mention, the jar I am shading does not exist on a repository. I just compile it locally (clean install). As well, here's what I use to shade:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>2.3</version>
    <configuration>
    </configuration>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>shade</goal>
            </goals>
            <configuration>
                <minimizeJar>true</minimizeJar>
            </configuration>
        </execution>
    </executions>
</plugin>
like image 676
PaulBGD Avatar asked Jun 02 '14 01:06

PaulBGD


2 Answers

You can face this error, if you're compiling from Eclipse with m2e plugin.

The workaround is to uncheck Resolve Workspace artifacts in the Maven Run Configuration.

enter image description here

like image 155
Stephan Avatar answered Sep 21 '22 00:09

Stephan


I had a similar issue and as this is the first question that shows up on google, I add my solution as an answer here.
In my case, the problem was related to the dependencyReducedPomLocation I've set.
I wanted to move the dependency-reduced-pom to the target folder and so I've set the property to ${project.build.directory}.
However, this property does not expect a folder, but a file and the correct value for it would be ${project.build.directory}${file.separator}dependency-reduced-pom.xml.
After this change everything worked as expected.

like image 37
Robert P Avatar answered Sep 20 '22 00:09

Robert P