Сбой сборки maven при использовании репо в проекте для локальных jar-файлов - PullRequest
0 голосов
/ 07 января 2019

Я использовал решение, присутствующее в использовании репо в проекте , чтобы добраться до этого решения.
Проект maven использует внутрипроектный репозиторий для размещения специфичных для проекта файлов JAR. При запуске mvn verify или mvn install выдается следующее сообщение об ошибке:

[ERROR] Failed to execute goal on project Read: Could not resolve dependencies for project com.inc.slx:Read:jar:0.0.1-SNAPSHOT: Failed to collect dependencies at local:scm:jar:1.0: Failed to read artifact descriptor for local:scm:jar:1.0: Could not transfer artifact local:scm:pom:1.0 from/to repo (C:\workspace-sts-3.9.6.RELEASE\Read\repo): Cannot access C:\workspace-sts-3.9.6.RELEASE\Read\repo with type default using the available connector factories: BasicRepositoryConnectorFactory: Cannot access C:\workspace-sts-3.9.6.RELEASE\Read\repo using the registered transporter factories: WagonTransporterFactory: java.util.NoSuchElementException
[ERROR]       role: org.apache.maven.wagon.Wagon
[ERROR]   roleHint: c
[ERROR] -> [Help 1]
[ERROR] 

Я также обновил файл settings.xml mirrorOf с помощью "!repo,*".

Вот полный pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.inc.slx</groupId>
    <artifactId>Read</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <repositories>
        <repository>
            <id>repo</id>
            <name>project</name>    
            <url>${project.basedir}\repo</url>
        </repository>
    </repositories>

    <dependencies>

        <dependency>
            <groupId>local</groupId>
            <artifactId>scm</artifactId>
            <version>1.0</version>
        </dependency>

        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <!-- https://mvnrepository.com/artifact/log4j/log4j -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.16</version>

        </dependency>

        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.11</version>
        </dependency>

    </dependencies>
    <build>
        <plugins>       
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>3.1.0</version>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>false</addClasspath>
                            <classpathPrefix>lib/</classpathPrefix>
                            <mainClass>com.inc.broker.MainClass</mainClass>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>   
        </plugins>
    </build>
</project>

Папка репо находится по адресу:

Workspace
|-Read
   |-repo
     |-local
       |-scm
         |-1.0
           |-scm-1.0.jar
           |-scm-1.0.pom
...