所以我努力将所有依赖项放入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 & 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>
当我尝试构建项目时,它会抛出:
Error:(10, 26) java: package org.fit.layout.api does not exist
Error:(15, 28) java: package org.fit.layout.model does not exist
Error:(18, 17) java: package org.slf4j does not exist
我尝试通过以下方式添加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>
答案 0 :(得分:0)
您从其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>
答案 1 :(得分:0)
我通过执行CTRL + SHIFT + A并键入reimport maven来解决了这个问题