所需库的存档:无法读取或正在读取项目'Maven1'中的'C:/Users/TOPS/.m2/repository/net/bytebuddy/byte-buddy/1.7.5/byte-buddy-1.7.5.jar'不是有效的ZIP文件
这是在Eclipse的问题窗口中显示的错误
我完成的转换硒项目的步骤
创建一个简单的Selenium WebDriver项目
将其转换为Maven项目
从库选项中删除所有硒罐
在pom.xml中添加所有依赖项
从“添加库”选项添加JRE和Maven
然后向我显示此错误。
我的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>Maven1</groupId>
<artifactId>Maven1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.7.1</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-booter</artifactId>
<version>2.20.1</version>
</dependency>
</dependencies>
</project>
最佳答案
关于Byte Buddy
Byte Buddy是一个Java库,用于在运行时创建Java类。该工件是Byte Buddy的构建,其余部分依赖于ASM。如果不将Byte Buddy和ASM重新打包到您自己的名称空间中,则永远不要依赖此模块。
当您看到Archive for required library: 'C:/Users/TOPS/.m2/repository/net/bytebuddy/byte-buddy/1.7.5/byte-buddy-1.7.5.jar' in project 'Maven1' cannot be read or is not a valid ZIP file
错误时,建议采取以下步骤:
删除所有dependencies
并执行maven clean
和maven install
仅添加所需的Selenium dependency
根据您的确切要求,添加selenium-server
或selenium-java
作为依赖项。
仅使用Maven Artifact中最新的Selenium dependencies
当前版本为<version>3.7.1</version>
仅使用兼容的junit dependencies
我可以看到您使用了surefire-booter
依赖项,如下所示(交叉检查是否需要):
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-booter</artifactId>
<version>2.20.1</version>
</dependency>
最后,
maven-surefire-plugin
显然不存在。您需要添加以下plugin
:<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.17</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>${suiteXmlFile}</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>