java - Maven:未拉取缺少的依赖项

标签 java maven intellij-idea

所以我正在努力获取 pom.xml 文件中的所有依赖项,但仍然无法获取它们。

这是我原来的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">

    <!--
        Make runnable JAR: mvn package
     -->

    <parent>
        <groupId>cz.vutbr.fit.layout</groupId>
        <artifactId>parent</artifactId>
        <version>0.0.5-SNAPSHOT</version>
        <relativePath>../parent/pom.xml</relativePath>
    </parent>

    <modelVersion>4.0.0</modelVersion>

    <artifactId>layout-tools</artifactId>

    <name>LayoutTools</name>
    <description>
        An extensible web page segmentation and analysis framework - Runnable tools
    </description>
    <url>http://www.fit.vutbr.cz/~burgetr/FITLayout/</url>

    <licenses>
        <license>
            <name>GNU Lesser General Public License 3.0</name>
            <url>http://www.gnu.org/licenses/lgpl-3.0.txt</url>
            <distribution>repo</distribution>
        </license>
    </licenses>

    <developers>
        <developer>
            <name>Radek Burget</name>
            <roles>
                <role>Main developer &amp; project leader</role>
            </roles>
        </developer>
    </developers>

    <scm>
        <url>https://github.com/FitLayout/tools</url>
        <connection>scm:git:git@github.com:FitLayout/tools.git</connection>
        <developerConnection>scm:git:git@github.com:FitLayout/tools.git</developerConnection>
        <tag>HEAD</tag>
    </scm>

    <build>
        <sourceDirectory>src/main/java</sourceDirectory>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <excludes>
                    <exclude>**/*.java</exclude>
                </excludes>
            </resource>
        </resources>
        <plugins>
            <plugin>
                <!-- merges the service descriptions in META-INF/services -->
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>2.3</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <transformers>
                                <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
                                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                    <mainClass>org.fit.layout.tools.BlockBrowser</mainClass>
                                </transformer>
                            </transformers>
                            <finalName>LayoutTools</finalName>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>

    </build>

    <dependencies>
        <dependency>
            <groupId>xerces</groupId>
            <artifactId>xercesImpl</artifactId>
            <version>2.11.0</version>
        </dependency>
        <dependency>
            <groupId>xml-apis</groupId>
            <artifactId>xml-apis</artifactId>
            <version>1.4.01</version>
        </dependency>
        <dependency>
            <groupId>cz.vutbr.fit.layout</groupId>
            <artifactId>layout-cssbox</artifactId>
        </dependency>
        <dependency>
            <groupId>cz.vutbr.fit.layout</groupId>
            <artifactId>layout-segmentation</artifactId>
        </dependency>
        <dependency> <groupId>cz.vutbr.fit.layout</groupId> <artifactId>layout-api</artifactId> </dependency>
        <!-- <dependency>
            <groupId>cz.vutbr.fit.layout</groupId>
            <artifactId>layout-logical</artifactId>
        </dependency>
        <dependency>
            <groupId>cz.vutbr.fit.layout</groupId>
            <artifactId>layout-classify</artifactId>
        </dependency>
        <dependency>
            <groupId>cz.vutbr.fit.layout</groupId>
            <artifactId>layout-storage-rdf</artifactId>
            <exclusions>
                <exclusion>
                    <artifactId>slf4j-log4j12</artifactId>
                    <groupId>org.slf4j</groupId>
                </exclusion>
            </exclusions>
        </dependency> -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
        </dependency>
        <dependency>
            <groupId>org.jline</groupId>
            <artifactId>jline</artifactId>
            <version>3.9.0</version>
        </dependency>       
    </dependencies>

</project>

当我尝试构建项目时,它抛出:

错误:(10, 26) java: 包 org.fit.layout.api 不存在

错误:(15, 28) java: 包 org.fit.layout.model 不存在

错误:(18, 17) java: 包 org.slf4j 不存在

我尝试通过以下方式添加layout-api`:

    <dependency> <groupId>cz.vutbr.fit.layout</groupId> 
<artifactId>layout-api</artifactId><version>0.0.4</version> </dependency>

但是,这仍然没有得到认可。

我检查了 Maven 存储库,但它也缺少 org.fit.layout.model

https://repo.maven.apache.org/maven2/cz/vutbr/fit/layout/

我尝试编译和运行的项目是

https://github.com/FitLayout/tools

更新:在编译父项目时,我收到以下 Maven 插件错误:

我添加了以下内容,但仍然无法消除 Maven 插件错误:

Cannot resolve plugin org.apache.maven.plugins:maven-clean-plugin:2.5
Cannot resolve plugin org.apache.maven.plugins:maven-install-plugin:2.4
Cannot resolve plugin org.apache.maven.plugins:maven-deploy-plugin:2.7
Cannot resolve plugin org.apache.maven.plugins:maven-site-plugin:3.3

我已经添加

<dependency>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <type>maven-plugin</type>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-clean-plugin</artifactId>
                <version>2.5</version>
                <type>maven-plugin</type>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-install-plugin</artifactId>
                <version>2.4</version>
                <type>maven-plugin</type>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-deploy-plugin</artifactId>
                <version>2.7</version>
                <type>maven-plugin</type>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
                <version>3.3</version>
                <type>maven-plugin</type>
            </dependency>

最佳答案

您缺少其 Github 帐户中的父 pom。我为你找到了链接。这是here 。您希望将其克隆到与克隆其他存储库相同的目录中。然后您就可以很好地打包您正在使用的项目。

编辑:从您的评论中我看到您也没有编译器插件。将其放入您的 pom.xml 中:

    <dependency>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>3.8.1</version>
      <type>maven-plugin</type>
    </dependency>

关于java - Maven:未拉取缺少的依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59993527/

相关文章:

java - 线程消费者内部的 NullPointerException

java - 计算二进制字的奇偶校验

java - 为什么我遇到 org.codehaus.mojo :exec-maven-plugin:1. 2.1 :exec error?

intellij-idea - 在 Intellij Idea 的滚动条中显示代码

java - Eclipse 仅编译引用的类(如何设置 Intellij 来执行相同的操作)

java - 无法将一个 Spring Boot 应用程序导入到另一个 Spring Boot 应用程序中

java - 是什么触发了 GWT 的验证?验证失败时会发生什么?

java - src/main/resources 中的 FileNotFoundException

debugging - 如何在发生时打印所有Java编译器输出?

java - Android:如何以编程方式将表格布局高度平均划分为表格行