Maven Compile Доступ запрещен копирование зависимостей - PullRequest
2 голосов
/ 20 сентября 2019

У меня странная проблема с Maven, с которой я раньше не сталкивался.Похоже, что у меня есть единственная проблема в моей команде, и это для проекта, который существовал в течение значительного периода времени (более 10 лет).Я новичок в команде, но и другие участники, у которых, похоже, нет этой проблемы.

Вот проблема:

Если я наберу mvn clean compile, я получуследующая ошибка:

[ERROR] Failed to execute goal org.codehaus.mojo:dependency-maven-plugin:1.0:copy (copy-dependencies)
  on project deployable-war: Error copying artifact
  from C:\...\dependency\target\classes
  to C:\...\deployable-war\target\dependency\jws\lib\classes:
  C:\...\dependency\target\classes (Access is denied) -> [Help 1]

Теперь странная часть заключается в том, что исходная и целевая папки (dependency\target\classes и deployable-war\target\dependency\jws\lib\classes) были созданы Maven во время одной и той же команды компиляции .Это многомодульный проект, поэтому mvn compile пройдет через все 9 модулей.Это модуль 8. Модуль зависимости - это модуль 7.

Если после этого я перезапущу mvn compile (без clean), то выдает ту же ошибку, поэтому, похоже, это не времяПроблема.

Если я вручную создаю папку (mkdir ...\deployable-war\target\dependency\jws\lib\classes) и повторно запускаю mvn compile, все работает нормально.Это включает в себя копирование JAR-файлов внутри папки lib, которая, по ее словам, была запрещена при попытке создать папку классов.

Я попытался полностью удалить папку \target\.

Я пытался запустить Maven от имени администратора.

Я попытался извлечь новую копию проекта из Git в новый каталог на моем локальном компьютере.

Я проверил разрешения на папки для самого проекта, чтобы убедиться, что мой пользователь ипользователь с правами администратора имеет полный контроль.

ОС - Windows 10 Enterprise.

Есть предложения?

РЕДАКТИРОВАТЬ: Из обсуждения отследил ошибку до этой части pom.xml для модуля:

<build>
        <finalName>deployable</finalName>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>dependency-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>copy-dependencies</id>
                        <phase>compile</phase>
                        <goals>
                            <goal>copy</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${project.build.directory}/${project.build.finalName}/jws/lib</outputDirectory>
                            <artifactItems>
                                <artifactItem>

Теперь проблема, похоже, связана с подмножеством artifactItem - в частности, artifactItems, которое не имеет явно определенного destFileNames.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...