java Maven着色错误:访问被拒绝

7y4bm7vi  于 2023-03-21  发布在  Java
关注(0)|答案(5)|浏览(166)

现在,我已经看到了this question,但它似乎没有任何东西正在使用我的目标文件夹。
发生了什么,当我编译它失败并显示这个错误:

[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]

我不太清楚为什么会发生这种情况,因为它不会发生在我的普通电脑上。
编辑:我忘了说了,我正在着色的jar并不存在于仓库中。我只是在本地编译它(干净安装)。还有,这里是我用来着色的东西:

<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>
bmvo0sr5

bmvo0sr51#

如果你使用m2e插件从Eclipse编译,你可能会遇到这个错误。
解决方法是在Maven运行配置中取消选中Resolve Workspace artifacts

tktrz96b

tktrz96b2#

我有一个类似的问题,因为这是谷歌上显示的第一个问题,我在这里添加我的解决方案作为答案。
在我的例子中,问题与我设置的dependencyReducedPomLocation有关。
我想将dependency-reduced-pom移动到target文件夹,因此将属性设置为${project.build.directory}
但是,此属性不需要文件夹,而是文件,其正确值应为${project.build.directory}${file.separator}dependency-reduced-pom.xml
在这一变化之后,一切都按预期进行。

kadbb459

kadbb4593#

我正在使用Eclipse Spring和maven插件。我在日志中看到了类似的错误:
[错误]无法在项目lds_ws_framework上执行goal org.apache.maven.plugins:maven-shade-plugin:2.3:shade(default):创建着色jar时出错:C:\Users\fritchd\Documents\autoaction_archivetkitproject\target\classes(Access is denied)-〉[帮助1]
我最近更新了我的项目,从不同的maven构建过程中使用maven-shade-plugin 2.3。我注意到我在\target文件夹中有很多来自上一个过程的工件。所以我尝试删除该项目\target目录下的所有文件。当我重新运行构建时,我没有看到错误。

q1qsirdb

q1qsirdb4#

使用maven-shade-plugin的artifactSet选项
无论出于何种原因,Eclipse都不会产生“AccessDenied”错误

lx0bsm1f

lx0bsm1f5#

将maven-shade-plugin升级到3.4.1版本解决了这个问题。

相关问题